home *** CD-ROM | disk | FTP | other *** search
/ Whiteline: delta / whiteline CD Series - delta.iso / whitelin / share / boxkite / boxkite.doc < prev    next >
Text File  |  1995-11-25  |  83KB  |  1,572 lines

  1.  
  2.                           BoxKite V 1.72
  3.                           ==============
  4.  
  5.                 ---- Just another file selector ----
  6.  
  7.  
  8.  
  9.  
  10.                 1. Was ist und was soll BoxKite?
  11.                 --------------------------------
  12.  
  13. BoxKite   ist   eine    kleine,    handliche,    saubere,   kompatible
  14. Dateiauswahlbox. Er hängt sich ins TOS  ein und wartet darauf, daß ein
  15. Anwendungsprogramm  die  GEM-eigene  Dateiauswahlbox  anzeigen möchte.
  16. Dann schiebt er sich dazwischen und zeigt stattdessen seine eigene Box
  17. an. Diese bietet einige Möglichkeiten,  die  weit über die in den ROMs
  18. enthaltene Box himausgehen und  hält  sich dabei an gewisse Standards,
  19. die sich im Laufe der Zeit  herauskristallisiert haben. So ist es etwa
  20. möglich, mehrere Dateien auf einmal zu selektieren; Sie können Dateien
  21. aus BoxKite heraus kopieren oder löschen und Sie können BoxKite (fast)
  22. vollständig mit  der  Tastatur  bedienen.  Darüber  hinaus  können Sie
  23. BoxKite in vielerlei Hinsicht an  Ihre  Vorlieben  anpassen - sogar in
  24. der  Größe.  BoxKite  dürfte   der   erste   Fileselector  mit  dieser
  25. Eigenschaft sein.
  26.  
  27. Vor allen  Dingen  aber  ist  BoxKite  zukunftssicher:  Er  kann unter
  28. MiNT/MultiTOS  mit  langen   Dateinamen   mit   gemischter  Groß-  und
  29. Kleinschreibung umgehen. Das erscheint  zwar  noch  nicht wichtig, ich
  30. bin aber davon überzeugt, daß sich irgendwann vernünftige Dateisysteme
  31. durchsetzen werden.
  32.  
  33.     Ein paar Worte zur Entstehung
  34.     -----------------------------
  35.  
  36. Mein Texteditor SCEdit enthielt  eigentlich  schon immer einen eigenen
  37. Fileselector. Ich bin also  vorbelastet.  Für eine neue SCEdit-Version
  38. entstand eine erweiterte Dialogbibliothek (Für Kenner: Es handelt sich
  39. um eine quasi objektorientiertes System unter  Pure C. So ist etwa die
  40. Dateiliste in BoxKite  EIN  Objekt.),  die  auch eine Dateiauswahl als
  41. vordefinierten Dialog enthalten  sollte.  Sine  qua  non war dabei die
  42. MiNT-Anbindung und der korrekte Umgang  mit langen Dateinamen. Etwa um
  43. diese Zeit fiel mir Stefan  Radermachers  Selectric™ in die Hände, der
  44. etliche  hervorragende  Ideen  enthält,   aber   eben   MiNT  und  die
  45. erweiterten Dateisysteme leider (noch?) nicht unterstützt. Da habe ich
  46. dann gemerkt, daß es  noch  keinen  wirklich komfortablen Fileselector
  47. gibt, der dies leistet. So nahm das Schicksal seinen Lauf...
  48.  
  49. Meine persönlichen Daten:
  50.  
  51.         Harald Becker
  52.         Ferrenbergstraße 41
  53.         51465 Bergisch Gladbach
  54.         Konto 1311 045 876, Kreissparkasse Köln
  55.         (Bankleitzahl 370 502 99)
  56.  
  57.         Email: Harald Becker @ K (Mausnetz)
  58.  
  59.  
  60.                 2. Juristisches
  61.                 ---------------
  62.  
  63. BoxKite ist SHAREWARE. Sie  haben  die  Möglichkeit, das Programm vier
  64. Wochen lang zu testen. Bei regelmäßiger Benutzung über diesen Zeitraum
  65. hinaus haben  Sie  eine  Sharewaregebühr  von  20,--  DM  an  mich  zu
  66. entrichten (Bankverbindung siehe oben  oder  unter dem Menupunkt "Über
  67. BoxKite"). Geben Sie bei  Überweisungen  bitte unbedingt den Zweck und
  68. Ihre Adresse mit an, da ich das Geld sonst nicht zuordnen kann. Es ist
  69. auch sinnvoll, wenn  Sie  mir  mitteilen,  welche  Version von BoxKite
  70. Ihnen da in die Hände gefallen ist.
  71.  
  72. Nach schlechten  Erfahrungen  mit  vorangegengenen Shareware-Projekten
  73. sah ich  mich  leider  dazu  gezwungen,  die  öffentliche  Version von
  74. BoxKite  leicht  einzuschränken.  Die   Funktionen  "Arbeit  sichern",
  75. "Verschieben" und "Touch" sind erst  in der Vollversion verfügbar. Das
  76. bedeutet  insbesondere,  daß  Sie   erst   in   der  Vollversion  eine
  77. Konfiguration abspeichern und damit  BoxKite dauerhaft Ihrem Geschmack
  78. anpassen können. Nach Zahlung  der  Shareware-Gebühr  erhalten Sie von
  79. mir schnellstmöglich einen  Schlüssel,  mit  dem  Sie  die öffentliche
  80. Version in eine mit Ihrem Namen personalisierte Vollversion verwandeln
  81. können. Beachten Sie aber bitte,  daß Sie eine personalisierte Version
  82. nicht weitergeben dürfen.  Andernfalls  verstoßen  Sie gegen geltendes
  83. Recht.
  84.  
  85. Da die oben beschriebenen  Einschränkungen  dem  Vernehmen nach leider
  86. nicht  ausreichten  alle  potentiellen  Anwender  zu  einem  korrekten
  87. Verhalten  zu  bewegen,  wird  seit  Version  1.60  darüber  hinaus in
  88. unregelmäßigen  Abständen  beim  Verlassen  der  Box  mit  "Ok"  einen
  89. Hinweis  zur  Erinnerung   ausgeben.   Dies   führt   aber  zu  keiner
  90. Einschränkung der Testmöglichkeiten.
  91.  
  92. Die öffentliche  Version  von  BoxKite  dürfen  (und  sollen) Sie nach
  93. Belieben  weitergeben.   Voraussetzung   ist   dabei,   daß   Sie  die
  94. Zusammenstellung der Dateien im Ordner  nicht verändern. Ferner dürfen
  95. Sie die Programm-  und  Dokumentationsdateien  nicht modifizieren und
  96. vor allen  Dingen  keinen  Copyrightvermerk  entfernen oder verändern.
  97. Ausnahme: Sie dürfen das  vollständige  Paket mit einem Archivprogramm
  98. (ARC, ZIP o. ä.) komprimieren.
  99.  
  100. Alternativ zum Shareware-Vertrieb  ist  eine exklusive Vollversion von
  101. BoxKite  in  der  whiteline-Serie   der   Firma  delta  labs  media
  102. erhältlich. Diese umfaßt ein gedrucktes  Handbuch und kostet 30,-- DM.
  103. Wenn Sie eine  solche  Vollversion  mit  gedrucktem  Handbuch erworben
  104. haben, haben Sie keine  weiteren  Verpflichtungen  mehr an mich. Diese
  105. Vollversion dürfen Sie natürlich NICHT weitergeben. Bezugsadresse:
  106.  
  107.     delta labs software
  108.     Brillerstraße 40
  109.     42105 Wuppertal
  110.  
  111. Bedenken Sie bitte, daß auch  in  einem 'kleinen' Programm wie BoxKite
  112. eine Menge an Entwicklungsarbeit steckt. Ich habe allein einige Monate
  113. darauf verwendet, das Programm so  'klein' (d. h. speichersparend) wie
  114. möglich zu gestalten.
  115.  
  116. Zuletzt muß noch dies gesagt werden:
  117.  
  118. Ich, Harald Becker, kann keine  Haftung für irgendwelche direkten oder
  119. indirekten  Schäden  -  einschliesslich,  aber  nicht  beschränkt  auf
  120. materielle oder finanzielle - übernehmen,  die durch die Benutzung von
  121. BoxKite oder die Untauglichkeit von BoxKite für einen bestimmten Zweck
  122. entstehen.
  123.  
  124.     Vorgehen zur Registrierung
  125.     --------------------------
  126.  
  127. Die whiteline-Vollversion  von  BoxKite  brauchen  Sie natürlich nicht
  128. mehr zu registrieren. In diesem  Falle  können  Sie also die folgenden
  129. Erläuterungen überspringen.
  130.  
  131. Vor der Registrierung ziehen  Sie  am besten eine Sicherheitskopie der
  132. öffentlichen  Version  von  BoxKite,  da  Sie  -  wie  gesagt  -  eine
  133. personalisierte Version nicht mehr  weitergeben  dürfen. Wenn Sie dann
  134. in der öffentlichen  Version  im  Menu  "Funktionen" den Eintrag "Über
  135. BoxKite" auswählen, finden Sie  dort  einen  Knopf "Registrieren". Ein
  136. Klick auf diesen Knopf  führt  Sie  weiter  in eine Dialogbox mit zwei
  137. Textfeldern, in die Sie dann  Ihren  Namen  und den Schlüssel eingeben
  138. sollten. Wenn Sie BOXKITE.PRG unter  diesem Namen im AUTO-Ordner Ihres
  139. Bootlaufwerks installiert haben, geschieht  alles weitere automatisch.
  140. Andernfalls fragt BoxKite Sie, wo  sich BOXKITE.PRG befindet. Wechseln
  141. Sie dann  einfach  in  BoxKite  in  das  entsprechende Verzeichnis und
  142. selektieren Sie die entsprechende Datei. Dann wird diese Datei in Ihre
  143. persönliche Vollversion von BoxKite  verwandelt. Den Schlüssel sollten
  144. Sie sich notieren, da sie  damit  auch  eventuelle Updates von BoxKite
  145. personalisieren können, ohne  sich  erneut  mit  mir  in Verbindung zu
  146. setzen.
  147.  
  148. Seit der Version 1.60 werden bei "Arbeit sichern" der Benutzername und
  149. der Schlüssel in  BOXKITE.INF  gespeichert.  Bei einer Neuinstallation
  150. werden diese Daten dann in den Registrierungsdialog eingesetzt, so daß
  151. Sie diese Angaben nur noch mit "Ok" zu bestätigen brauchen.
  152.  
  153.  
  154.                 3. Installation
  155.                 ---------------
  156.  
  157. Zum BoxKite-Paket gehören diese Programme:
  158.  
  159. - BOXKITE.PRG: Das eigentliche residente Programm.
  160.  
  161. - BOXKITE.ACC: Ein kleines  Accessory,  das  es gestattet, BoxKite an-
  162. und abzuschalten oder ihn mal  eben  auf den Bildschirm zu bringen, um
  163. eine Datei zu  kopieren  oder  zu  suchen  oder...  Sie  können dieses
  164. Programm  auch  in  BOXKITE.APP  umbenennen  und  dann  einfach  durch
  165. Doppelklick vom Desktop aus starten.  (Es  ist  auch möglich, daß sich
  166. diese Datei als schon als BOXKITE.APP in der Distribution befindet.)
  167.  
  168. - BOXKITE.CPX:    Ein    Modul   fürs   neue   Kontrollfeld   XCONTROL,
  169. funktionsgleich mit BOXKITE.ACC.
  170.  
  171. -  BEISPIEL.C:  Ein  Beispielprogramm  im  Quelltext,  das  den  Abruf
  172. mehrerer Dateinamen über  'get_first'  und 'get_next' demonstriert. An
  173. MultiTOS und lange Dateinamen  angepaßt.  Seit  Version 1.71 auch eine
  174. Demonstration der  erweiterten  Schnittstelle,  über  die  BoxKite den
  175. Neuaufbau der  Hintergrundfenster  an  die  Hauptanwendung  delegieren
  176. kann.
  177.  
  178. - BOXINPUT.S,  BOXINPUT.O:  Module  zur  Unterstützung der erweiterten
  179. Schnittstelle.
  180.  
  181. Da die  TOS-Landschaft  inzwischen  etwas  komplizierter geworden ist,
  182. gibt es  zur  Installation  verschiedene  Möglichkeiten,  die  je nach
  183. TOS-Version  und  sonstiger  Software-Ausstattung  mehr  oder  weniger
  184. empfehlenswert sind:
  185.  
  186. 1.  Einfaches  TOS:  Hier  empfiehlt   es  sich,  BOXKITE.PRG  in  den
  187. AUTO-Ordner zu kopieren  und  den  Rechner  neu  zu  starten. Dann ist
  188. BoxKite  ins  Betriebssystem   integriert   und  steht  jederzeit  zur
  189. Verfügung.
  190.  
  191. Hinweis: Wenn man  bei  TT-  oder  Mega-STE-TOS  im  Desktop eine neue
  192. .INF-Datei liest, erscheint immer  die gewöhnliche TOS-Auswahlbox. Das
  193. ist ein Problem von TOS; es liegt  daran, daß bei diesen (wie auch bei
  194. allen älteren) Versionen der Desktop  keine GEM-Anwendung, sondern ein
  195. integraler Teil von GEM ist. MultiTOS ist da intelligenter...
  196.  
  197. 2. Einfaches  TOS  mit  MiNT  0.95  oder  höher (ältere MiNT-Versionen
  198. sollte sowieso niemand mehr  benutzen):  Auch  hier können Sie BoxKite
  199. einfach im AUTO-Ordner  installieren;  vorzugsweise  so,  daß  er nach
  200. MINT.PRG gestartet wird. Es gibt aber noch eine hübschere Möglichkeit:
  201. Beim Booten  arbeitet  MiNT  die  Steuerdatei  MINT.CNF  ab,  die auch
  202. Befehle zum Starten  von  Programmen  enthalten  kann. Diese Programme
  203. kommen nach der Initialisierung  von  MiNT  zum  Zuge, und zwar in der
  204. Reihenfolge, in der sie in MINT.CNF  aufgeführt sind. Dabei können sie
  205. in ganz beliebigen Ordnern stehen.  In dieser Situation erhält BoxKite
  206. die Gelegenheit, sich auf MiNT einzustellen. Fazit: Unter MiNT sollten
  207. Sie in Ihre MINT.CNF die Zeile
  208.  
  209. exec C:\BOXKITE.PRG
  210.  
  211. einfügen und den Rechner neu starten. Wenn BOXKITE.PRG in einem Ordner
  212. steht, sollten  Sie  natürich  den  entsprechenden  vollständigen Pfad
  213. benutzen.
  214.  
  215. 3. MultiTOS: Da MultiTOS auf  MiNT  aufgebaut ist, gilt hier dasselbe,
  216. was  zu  MiNT  gesagt  wurde.  Zusätzlich  ist  es  hier erforderlich,
  217. entweder das Accessory  BOXKINST.ACC  oder die Kontrollfelderweiterung
  218. BOXKINST.CPX zu mitzubooten. Sie  sorgen  für die saubere Installation
  219. von  BoxKite  im   Betriebssystem.   Dies   gilt   zumindest   in  den
  220. MultiTOS-Versionen, die ich bisher  kenne.  Es  ist immer möglich, daß
  221. Atari  da   plötzlich   etwas   ändert.   Dann   werde   ich   BoxKite
  222. schnellstmöglich anpassen.
  223.  
  224. 4. MagiC (ich glaube, jetzt weiß ich, wie man das schreibt): Hier gilt
  225. dasselbe wie unter normalem TOS.
  226.  
  227. Sie können BOXKITE.PRG auch in  jedem  Falle  vom Desktop aus starten.
  228. Dann wird BoxKite ebenfalls  resident  installiert.  Für einen kleinen
  229. Test ist diese Methode ausreichend,  sie  hat aber zwei Nachteile: Zum
  230. einen kann sie zu einem ineffizienten Verhalten der Speicherverwaltung
  231. führen (Fragmentierung),  und  zum  anderen  wird  dann  GEM bei einem
  232. Auflösungswechsel gnadenlos abstürzen. Das  ist  ein  Problem von TOS,
  233. für das es wahrscheinlich keine saubere Lösung gibt.
  234.  
  235. Unverträglichkeiten von BoxKite mit anderen residenten Programmen sind
  236. mit einer Ausnahme nicht bekannt. Damit er sich aber nicht mit anderen
  237. residenten Fileselektoren ins Gehege kommt, prüft er beim Start, ob im
  238. Cookie-Jar von TOS bereits  ein  Cookie  namens 'FSEL' existiert. Wenn
  239. dies der Fall ist, installiert sich BoxKite nicht im System.
  240.  
  241. Die   o.   a.   Ausnahme   ist    MultiDesk   von   Codehead.   Dieser
  242. Accessory-Expander ist  ziemlich  unsauber  programmiert; insbesondere
  243. benutzt er zum Verbiegen der  Systemvektoren nicht das XBRA-Verfahren.
  244. Das führt dazu, daß BOXKINST.CPX  abstürzt. BOXKINST.ACC müßte dagegen
  245. laufen.
  246.  
  247.                 *** ACHTUNG ***
  248.  
  249. Wenn Sie von  BoxKite  1.2x  oder  1.4x  nach  BoxKite  1.6x wechseln,
  250. sollten Sie vor dem  ersten  Systemstart  mit  dem  neuen BoxKite Ihre
  251. bisherige  BOXKITE.INF  (im  Wurzelverzeichnis  Ihres  Bootlaufwerkes)
  252. löschen  oder  umbenennen.  Mit   "Arbeit   sichern"  können  Sie  als
  253. registrierter Benutzer jederzeit eine neue Konfiguration speichern.
  254.  
  255.  
  256.                 4. Bedienung
  257.                 ------------
  258.  
  259. Gewisse  Ähnlichkeiten   mit   der   Standard-GEM-Box   oder   anderen
  260. Ersatzprodukten kann BoxKite nicht  verleugnen:  So  gibt es auch hier
  261. eine Dateiliste, ein Eingabefeld  für  den aktuellen Ordner, eines für
  262. den Dateinamen und die Knöpfe  "Ok"  und  "Abbruch", daneben aber auch
  263. einiges mehr.
  264.  
  265. Zunächst einige allgemeine Bemerkungen:
  266.  
  267. 1. Eine grafische Benutzerschnittstelle läßt sich eigentlich gar nicht
  268. beschreiben; man muß damit  herumspielen.  Am  besten drucken Sie also
  269. diesen Text aus, legen  ihn  neben  Ihren  Rechner und bringen BoxKite
  270. irgendwie  auf  den  Bildschirm,  im  Zweifel  mit  BOXKINST.ACC  oder
  271. BOXKINST.CPX. Wenn Sie  dann  beim  Durchlesen  auf  eine interessante
  272. Möglichkeit stoßen, probieren Sie es  sofort  aus. So gewinnen Sie den
  273. besten Überblick über  die  (nicht  gerade  wenigen) Möglichkeiten von
  274. BoxKite.
  275.  
  276. 2. Mit BoxKite können Sie mehrere Dateien auf einmal auswählen, sofern
  277. das aufrufende Programm dies  zuläßt.  Hierzu  wird dasselbe Protokoll
  278. wie in Selectric™ 1.02  verwendet.  Alle  Programme, die Selectric™ in
  279. diesem  Sinne  unterstützen,  unterstützen  damit  auch  BoxKite. Dies
  280. können Sie  z.  B.  mit  GemView  oder  1stGuide  testen.  (Ich  liebe
  281. BiKapitalisierungen!) Manche Programme  verkraften  nur eine bestimmte
  282. Anzahl von Dateien und teilen  dies  BoxKite mit; sollten Sie in einem
  283. solchen Fall mehr Dateien ausgewählt  haben,  so warnt BoxKite Sie mit
  284. einem Piepton (es sei denn, Sie haben im Kontrollfeld den Lautsprecher
  285. abgewürgt) und übergibt dem Programm nur die obersten Dateien.
  286.  
  287. 3. Wie schon erwähnt  ist  BoxKite  (fast)  komplett  mit der Tastatur
  288. bedienbar und signalisiert  dies  (wiederum  fast)  überall  durch die
  289. Bildschirmdarstellung. Wenn  etwa  ein  Knopf  in  seiner Beschriftung
  290. einen unterstrichenen Buchstaben  aufweist,  so  können  Sie  ihn (den
  291. Knopf) auch "anklicken", indem  Sie  die  Buchstabentaste zusammen mit
  292. "Alternate" drücken.
  293.  
  294. Um wirklich restlos alle  Dialogobjekte  mit der Tastatur bedienbar zu
  295. machen, wird in  BoxKite  das  Konzept  des  Tastaturfokus angewendet.
  296. Dahinter  steckt  folgendes:  Stellen  Sie   sich  eine  ganz  normale
  297. GEM-Dialogbox mit mehreren Texteingabefeldern  vor.  Wenn Sie dann ein
  298. Zeichen eingeben, dann landet  dieses  Zeichen  in dem Eingabefeld, in
  299. dem gerade der Eingabecursor (der  dünne  Strich) steht. Man kann also
  300. sagen, daß dieses  Objekt  gerade  mit  der Tastatur "verdrahtet" ist,
  301. oder, vornehm ausgedrückt: Der  Tastaturfokus  steht gerade auf diesem
  302. Objekt.
  303.  
  304. Diese Methode wird in  BoxKite  etwas  verallgemeinert.  Da  z. B. die
  305. Dateiliste in BoxKite keinen Cursor kennt  und da etwa das Pfadfeld in
  306. BoxKite  breiter  werden  kann   als   der   am  Bildschirm  sichtbare
  307. Ausschnitt, wird dasjenige Objekt, das  gerade  im obigen Sinne an die
  308. Tastatur  angeschlossen  ist,  mit  einem  doppelten  Rahmen kenntlich
  309. gemacht. Dieser Rahmen stellt den Tastaturfokus dar.
  310.  
  311. Den Tastaturfokus (d. h.  den  doppelten  Rand)  versetzen Sie mit der
  312. "Tab"-Taste zum nächsten, mit "Shift-Tab" zum vorherigen Objekt.
  313.  
  314. 4. Einige Knöpfe in  BoxKite  enthalten Pop-Up-Menus (PopUps, BeamUps,
  315. JazzUps, SonstWasUps), die  eine  Reihe  von  Unterpunkten zur Auswahl
  316. anbieten. Diese Menus können  Sie  genauso  bedienen wie die Drop-Down
  317. Menus in  (fast)  jedem  GEM-Programm,  indem  Sie  mit  losgelassener
  318. Maustaste darüberfahren und  einen  Punkt  anklicken.  Sie können aber
  319. auch die Maustaste  festhalten  und  darüberfahren;  wenn Sie dann die
  320. Maustaste über einem Punkt  loslassen,  wird  dieser angewählt. Ebenso
  321. können Sie die Maus ganz in  weglassen  und mit den Tasten "Pfeil auf"
  322. und  "Pfeil  ab"  einen  Punkt   markieren  und  diesen  mit  "Return"
  323. auswählen. Mit "Esc"  bringen  Sie  das  Menu wieder zum Verschwinden,
  324. ohne etwas auszuwählen, ebenso wie mit  einem Klick bzw. dem Loslassen
  325. der Maustaste außerhalb des Menus. Mit  dem Druck auf eine Buchstaben-
  326. oder  Zifferntaste  können  Sie  den  jeweils  nächsten  Punkt  direkt
  327. anspringen, der mit diesem Buchstaben bzw. dieser Ziffer beginnt. Dies
  328. klappt leider nicht mit  den  Umlauten.  Um  also  den Menupunkt "Über
  329. BoxKite" direkt anzufahren, müssen Sie ein 'b' drücken.
  330.  
  331. 5. BoxKite stellt auch die  wichtigsten Dateioperationen wie Kopieren,
  332. Löschen, etc. zur Verfügung.  Diese  Operationen arbeiten rekursiv, d.
  333. h. wenn ein Ordner betroffen  ist,  werden auch alle darin enthaltenen
  334. Dateien und  weiteren  Ordner  bearbeitet.  Wenn  man  also etwa einen
  335. Ordner kopiert  oder  löscht,  wird  -  genau  wie  im  Desktop - sein
  336. vollständiger Inhalt  mitkopiert  oder  -gelöscht.  Solche Operationen
  337. können schon mal etwas dauern. Wenn Ihnen das zu langweilig wird (oder
  338. wenn Sie feststellen, daß Sie  einen  Fehler gemacht haben) können Sie
  339. jede derartige Operation mit den Tasten "Esc" oder "Undo" abbrechen.
  340.  
  341. 6. In BoxKite können Sie,  genau  wie  in der Standardbox, die Anzeige
  342. auf Dateien beschränken,  die  auf  ein  bestimmtes Suchmuster passen.
  343. Namen, die Sie momentan  nicht  interessieren,  brauchen Sie also noch
  344. nicht einmal  anzusehen.  Die  Art,  wie  diese  Suchmuster eingegeben
  345. werden,  unterscheidet  sich   allerdings   etwas  von  den  bekannten
  346. TOS-Wildcards, die  etwa  in  der  Standardbox  verwendet  werden. Sie
  347. orientiert  sich  an  dem  von   UNIX  her  bekannten  Standard,  auch
  348. 'globbing' genannt, der  sich  auch  in  der  ATARI-Welt  so peu a peu
  349. durchsetzt und wesentlich flexibler ist. Es sind folgende Jokerzeichen
  350. möglich:
  351.  
  352.     - '?': Steht für ein beliebiges unbekanntes Zeichen (das ist
  353.     noch genau so wie  in  TOS).  Beispiel: 'MEMO?.TXT' paßt auf
  354.     'MEMO1.TXT' oder 'MEMO2.TXT', aber nicht auf 'MEMOREX.TXT'.
  355.  
  356.     - '*': Steht für eine beliebige viele (auch 0) Zeichen. Dies
  357.     ist etwas  allgemeiner  als  in  TOS. Beispiel: '*TEST*.TXT'
  358.     paßt auf 'TEST.TXT' (hier sind beide  '*' durch je 0 Zeichen
  359.     ersetzt), 'BETATEST.TXT', 'TESTER.TXT', oder 'DIETESTS.TXT'.
  360.     Dieses Beispiel würde in  der  Standardbox  schon nicht mehr
  361.     funktionieren. Achtung: Streng  nach  dieser  Regel wäre '*'
  362.     und nicht etwa  '*.*'  die  Maske,  die  auf alle Dateinamen
  363.     paßt. Um aber alte  Gewohnheiten  nicht übermäßig zu stören,
  364.     übersetzt BoxKite die Maske  '*.*' (die eigentlich bedeutet:
  365.     Alle Namen, die mindestens einen  Punkt enthalten) schon bei
  366.     der Eingabe in '*'.
  367.  
  368.     - '[...]': Eine Zeichenklasse  in  eckigen Klammern paßt auf
  369.     ein Zeichen aus  dieser  Klasse.  An  dieser  Stelle muß TOS
  370.     passen. Beispiele: 'PROG.[CHO]' paßt  auf 'PROG.C', 'PROG.H'
  371.     oder  'PROG.O'.   'MEMO[1-9].DOC'   paßt   auf  'MEMO1.DOC',
  372.     'MEMO2.DOC', usw. bis  'MEMO9.DOC'.  Wenn  das erste Zeichen
  373.     hinter '[' ein '^' ist, wird die Bedeutung der Zeichenklasse
  374.     umgedreht: 'TEST.[^A-Z]'  paßt  auf  alle  Dateien  der Form
  375.     'TEST.?', wobei an  der  Stelle  des Fragezeichens irgendein
  376.     Zeichen steht, das kein Großbuchstabe ist.
  377.  
  378.     Schließlich lassen sich auch mehrere  Masken durch ein Komma
  379.     ','  zusammenfügen.  In  diesem   Falle  werden  alle  Namen
  380.     gefunden, die auf  irgendeine  der  Masken passen. Beispiel:
  381.     'TEST.C,TEST.H' paßt auf 'TEST.C' oder 'TEST.H'.
  382.  
  383. Einige konkrete Beispiele:
  384.  
  385. -   '*.APP,*.TOS,*.PRG,*.TTP,*.GTP' paßt auf alle Programme.
  386. -   '*.AC?' paßt auf alle aktiven und inaktiven Accessories.
  387. -   '*.AC[CX]' beschreibt dasselbe, nur etwas genauer.
  388. -   '*READ*ME*' paßt auf alle Namen wie 'README', 'READ.ME' etc.
  389. -   '*DESK*.IN[FX]' paßt auf aktive und inaktive 'DESKTOP.INF'-Dateien,
  390.     auch für den neuen Desktop.
  391.  
  392. Nun zu den Bedienungselementen von BoxKite im Einzelnen:
  393.  
  394.     Die Titelzeile
  395.     --------------
  396.  
  397. Sie  bietet   Platz   für   einen   Infotext,   den   das   aufrufende
  398. Anwendungsprogramm festlegt. Bei Programmen,  die  noch nichts von den
  399. neueren GEM-Versionen  wissen,  werden  Namen  und  Versionsnummer von
  400. BoxKite  angezeigt.  Darüber  hinaus   kann   BoxKite  mit  Hilfe  der
  401. Titelzeile sogar fliegen (was man bei dem Namen auch erwarten sollte):
  402. Wenn Sie in die Kopfzeile  klicken  und die Maustaste festhalten, wird
  403. BoxKite durchsichtig. Den verbliebenen "Geisterrahmen" können Sie dann
  404. verschieben;  wenn  Sie  die  Maustaste  wieder  loslassen,  erscheint
  405. BoxKite an der neuen  Position.  Voraussetzung für diese Flugfähigkeit
  406. ist, daß BoxKite genug  freien  Speicher  vorfindet, um den kompletten
  407. Bildschirmhintergrund zu retten. Ist dies  nicht möglich, so fliegt er
  408. nicht. Auch  alle  weiteren  Dialogboxen,  die  BoxKite  anzeigt, sind
  409. mittels ihrer Kopfzeile flugfähig.
  410.  
  411. P. S.: BoxKite fliegt nicht "massiv", wie man es etwa von den Dialogen
  412. in "Gemini" kennt. Das  ist  zwar  ein  hübsches  Feature, kann aber -
  413. gerade bei kleineren Bildschirmen - verdeckte Informationen auch nicht
  414. immer freilegen. Der Nutzen scheint mir also eher zweifelhaft.
  415.  
  416.     Die Dateiliste
  417.     --------------
  418.  
  419. Die Dateiliste sieht (etwa) aus  wie  ein Fenster im Desktop und nimmt
  420. den größten Teil der Box  ein.  Sie  zeigt  einen  Teil der Dateien im
  421. aktuellen Ordner, die auf  die  aktuelle  Auswahlmaske passen, an. Der
  422. angezeigte Ausschnitt läßt sich mit Hilfe  des Sliders am rechten Rand
  423. verstellen. Die Liste enthält  zusätzlich  zu  den Dateinamen auch die
  424. Größe sowie das  Datum  und  die  Uhrzeit  der  Erstellung, sofern die
  425. Breite der Box ausreicht. Ordner  werden  mit demselben Zeichen wie in
  426. Desktop-Fenstern markiert. Zusätzlich  werden  Ordner und Programme in
  427. Farbauflösungen  farblich  hervorgehoben.  Wenn  vor  dem  Namen eines
  428. Objektes ein Gleichheitszeichen erscheint,  dann  handelt  es sich bei
  429. diesem Objekt um einen symbolischen  Link  (kommt nur unter MiNT vor).
  430. Symbolische  Links,  die  auf   Objekte   verweisen,   die  gar  nicht
  431. existieren, werden  nicht  angezeigt.  Links  werden  ebenfalls farbig
  432. angezeigt. (Die farbigen Hervorhebungen  können  Sie seit Version 1.70
  433. per Option abschalten.)
  434.  
  435. Zur Mausbedienung: Die  Handhabung  des  Sliders  sollte Ihnen von den
  436. Desktop-Fenstern her  vertraut  sein.  In  der  Liste  sind die gerade
  437. ausgewählten Dateien (das  können  auch  mehrere  sein, s. o.) schwarz
  438. hinterlegt. Die Anzahl  der  gerade  selektierten  Dateien  können Sie
  439. oberhalb der Liste ablesen. Durch  einfaches Anklicken selektieren sie
  440. eine Datei,  alle  anderen  werden  deselektiert.  Ordner  werden beim
  441. Anklicken geöffnet, das  können  Sie  aber  auch auf einen Doppelklick
  442. umstellen. Halten Sie  beim  Anklicken  die  Shift-Taste fest, so wird
  443. nichts deselektiert; Sie  selektieren  diese  Datei  zusätzlich zu den
  444. anderen. Halten Sie nach dem Klick  die Maustaste fest und bewegen die
  445. Maus, so werden alle überstrichenen Dateien selektiert. Am oberen oder
  446. unteren Rand wird  die  Liste  gescrollt.  Wenn  sie  eine Datei durch
  447. Anklicken selektieren  und  beim  nächsten  Klick  die 'Control'-Taste
  448. festhalten, werden alle  Dateien  dazwischen  mit selektiert. Zwischen
  449. den Klicks kann die Liste beliebig  gescrollt werden. Damit können Sie
  450. mit  nur  zwei   Klicks   beliebig   große  zusammenhängende  Bereiche
  451. selektieren. Mit einem  Doppelklick  auf  eine  Datei  selektieren Sie
  452. diese und verlassen BoxKite sofort  ohne  den Umweg über "Ok" oder die
  453. "Return"-Taste.
  454.  
  455. Sie  können  BoxKite  auch  so   einstellen,  daß  er  anstelle  eines
  456. Doppelklicks auch  einen  einfachen  Klick  auf  die  rechte Maustaste
  457. akzeptiert.
  458.  
  459. Zur Tastaturbedienung: In der Liste ist immer ein Dateiname eingerahmt
  460. (es sei denn, sie ist  leer).  Dieser Rahmen ist der Auswahlcursor; er
  461. dient dazu, Dateien mit der  Tastatur  zu  selektieren. Wenn die Liste
  462. den Tastaturfokus hat,  können  Sie  den  Auswahlcursor mit den Tasten
  463. 'Pfeil Auf' und 'Pfeil Ab' um eine  Zeile auf und ab bewegen, zusammen
  464. mit 'Shift' um eine Seite,  d.  h.  um  soviele Dateien, wie die Liste
  465. gerade  anzeigt,  und  mit  'Home'  und  'Shift-Home'  können  Sie zum
  466. Listenanfang bzw. -Ende springen. Bei diesen Bewegungen wird die Datei
  467. unter  dem  Cursor  automatisch   selektiert.  Mit  'Control-Auf'  und
  468. 'Control-Ab' bewegen Sie den Rahmencursor, ohne die aktuelle Selektion
  469. zu beeinflussen. Ein  Druck  auf  die  Leertaste  selektiert die Datei
  470. unter dem Rahmencursor und deselektiert alle anderen; mit 'Shift-Leer'
  471. wird die Datei selektiert, ohne  die  anderen zu beeinflussen, und mit
  472. 'Control-Leer' können Sie Bereiche  selektieren. Bei 'Shift-Leer' wird
  473. zudem der Rahmencursor einen Eintrag weiter nach unten gesetzt, so daß
  474. Sie schnell  und  bequem  einen  zusammenhängenden Bereich selektieren
  475. können.
  476.  
  477. Die Tasten  "Help"  und  "Undo"  haben  eine  Sonderfunktion: Wenn der
  478. Auswahlcursor auf einem Ordnernamen  steht,  können  Sie diesen Ordner
  479. mit "Help" öffnen, ohne daß  er  selektiert  zu sein braucht. (Wenn er
  480. selektiert ist, genügt "Return" - "Help" ist in diesem Falle also eine
  481. Abkürzung  für  die  Sequenz   "Leertaste"   +   "Return".)  Wenn  der
  482. Auswahlcursor nur auf einer  Datei  steht,  wird diese selektiert. Mit
  483. "Undo" oder einem Klick auf das  Schließfeld (direkt über der Liste am
  484. linken Rand, s. u.) schließen Sie den aktuellen Ordner; der Inhalt des
  485. übergeordneten Verzeichnisses wird  angezeigt. Für Selectric™-Freunde:
  486. "Control-Backspace" tuts auch. Seit  Version  1.12  können Sie BoxKite
  487. auch so konfigurieren, daß "Undo" wie "Abbruch" wirkt.
  488.  
  489.     Der Kopf der Dateiliste
  490.     -----------------------
  491.  
  492. Die Kopfzeile der Dateiliste zeigt ständig die Anzahl der selektierten
  493. Dateien und Ordner an (es  kann  ja durchaus passieren, daß nicht alle
  494. gleichzeitig sichtbar  sind).  Links  von  dieser Information befindet
  495. sich ein Schließfeld,  genau  wie  in  einem  GEM-Fenster  oder in der
  496. Standardbox. Ein Klick darauf  schließt  den aktuellen Ordner (wie die
  497. Taste "Undo",  s.  o.).  Auf  der  rechten  Seite  befinden  sich drei
  498. Funktionsknöpfe,  die  mit  je   einem   Zeichen  markiert  sind.  Die
  499. zugehörigen Funktionen  lassen  sich  auch  mit  "Alternate"  und  der
  500. Zifferntaste, die das entsprechende Sonderzeichen trägt, aufrufen.
  501.  
  502. - '?' (Alternate-ß): Dieser Knopf  liefert Informationen, abhängig von
  503. der jeweiligen Selektion.  Wenn  ein  oder  mehrere Objekte selektiert
  504. sind,   werden   die   Dateien    und    Ordner    gezählt   und   der
  505. Gesamtspeicherbedarf berechnet. Dabei werden  auch  die in den Ordnern
  506. enthaltenen Dateien  und  weiteren  Ordner  berücksichtigt. Wenn Ihnen
  507. diese (Volks-)Zählung zu lange dauert,  können  Sie sie mit "Esc" oder
  508. "Undo" abbrechen. Wenn nichts selektiert ist, werden die Kapazität und
  509. der freie  Platz  des  aktuellen  Laufwerks  angezeigt.  Diese Angaben
  510. erfolgen in KByte, das KByte zu 1024 (nicht 1000!) Bytes gerechnet. Da
  511. das Betriebssystem den  Speicherplatz  auf  Disketten bzw. Festplatten
  512. meist in  Häppchen  von  genau  dieser  Größe  verteilt, erlaubt diese
  513. Angabe eine praktische Abschätzung des freien Platzes.
  514.  
  515. - '/' (Alternate-7): Mit  diesem  Knopf  selektieren Sie alle Einträge
  516. der aktuellen Liste  auf  einen  Schlag.  Wenn bereits alle selektiert
  517. sind, werden sie wieder deselektiert.  Wenn  Sie dieses Feld mit einem
  518. Doppelklick  anwählen  oder   gleichzeitig   eine  der  "Shift"-Tasten
  519. festhalten, wird immer alles deselektiert.
  520.  
  521. - '=' (Alternate-0): Dieser Knopf  löst  eine  Funktion aus, die einen
  522. symbolischen Link verfolgt.  Näheres  im  Abschnitt über Dateisysteme.
  523. Dieser Knopf ist zur Zeit nur unter MiNT selektierbar.
  524.  
  525.     Das Namensfeld (oberhalb der Dateiliste)
  526.     ----------------------------------------
  527.  
  528. In diesem Feld können  Sie  einen  Dateinamen  eintragen,  etwa um das
  529. aufrufende Programm zu veranlassen, eine neue Datei zu erzeugen. Dabei
  530. gibt es auch einige Spezialitäten: Während  Sie in dieses Feld Zeichen
  531. eintippen, wird sein  Inhalt  ständig  mit  der Dateiliste verglichen.
  532. Wenn Ihre Eingabe sich mit dem Anfang eines Namens in der Liste deckt,
  533. wird die entsprechende Datei  selektiert.  (Manche  Leute nennen sowas
  534. einen 'Autolocator'.)  Wenn  Sie  auf  diese  Art  die  richtige Datei
  535. gefunden haben, können Sie den  Namen  mit "Return" an die Applikation
  536. übergeben (oder, falls es ein  Ordner  ist, diesen öffnen). Falls kein
  537. passender  Name  existiert,  wird  die  Selektion  gelöscht.  Das  ist
  538. praktisch, wenn  Sie  eine  neue  Datei  erzeugen  wollen.  Alles dies
  539. funktioniert auch dann,  wenn  der  Tastaturfokus  auf  der Dateiliste
  540. steht.
  541.  
  542.     Das Pfadfeld (über dem Namensfeld)
  543.     ----------------------------------
  544.  
  545. Dieses Feld enthält den vollständigen  Namen des aktuellen Ordners (d.
  546. h. die  Namen  aller  Ordner,  in  denen  er  liegt)  und die aktuelle
  547. Suchmaske. In BoxKite kann eine  solche  Pfadangabe bis zu 128 Zeichen
  548. umfassen. Wenn sie zu  lang  für  die  Darstellung  ist, erscheinen am
  549. linken und/oder rechten Rand  des  Feldes  Pfeile,  mit  denen Sie den
  550. sichtbaren Ausschnitt verschieben können.
  551.  
  552. Einige Möglichkeiten, den aktuellen  Pfad  zu  ändern, haben Sie schon
  553. kennengelernt: Wenn Sie einen Ordner in der Dateiliste öffnen oder den
  554. aktuellen Ordner schließen,  ändert  sich  die  Pfadangabe im Pfadfeld
  555. entsprechend. Sie können auch den Fokus auf dieses Feld setzen und den
  556. Pfad von Hand ändern oder einen neuen  eingeben. Das ist aber wohl die
  557. umständlichste  Möglichkeit,  es  sei  denn,  Sie  machen  nur  kleine
  558. Änderungen.
  559.  
  560. Hinter  dem  kleinen  Abwärtspfeil  am  rechten  Rand  des  Pfadfeldes
  561. verbirgt  sich  eine   weitere   praktische  Möglichkeit:  Hier  sitzt
  562. sozusagen das Gedächtnis  von  BoxKite.  Wenn  Sie diesen Abwärtspfeil
  563. anklicken oder mit dem  Fokus  auf  dem  Pfadfeld die Taste 'Pfeil ab'
  564. drücken,  öffnet  sich  ein  Pop-Up-Menu,  das  aus  zwei  Abteilungen
  565. besteht. (Dieses Menu können  Sie  auch mit "Alternate-X" öffnen, ohne
  566. den Fokus zu versetzen.) Die zweite dieser Abteilungen stellt bis zu 8
  567. vollständige Pfade zur Auswahl. Wenn Sie in der obersten Abteilung den
  568. Eintrag "Pfad merken" anklicken oder irgendwo in BoxKite "Alternate-P"
  569. drücken, wird der aktuelle Pfad  oben  an das Menu angehängt. Wenn das
  570. Menu bereits 8 Pfade enthält, wird  der unterste Eintrag gelöscht.
  571.  
  572. Mit Hilfe des Selectric-Protokolls kann ein Anwendungsprogramm BoxKite
  573. eigene  Pfad-  bzw.  Typenlisten   unterschieben.  Dann  werden  diese
  574. Menupunkte  gesperrt.  Das   ist   leider  unvermeidlich,  da  BoxKite
  575. andernfalls u. U. das Anwendungsprogramm zerstört.
  576.  
  577. Wenn  Sie  einen  der  Pfade   auswählen,  wird  dieser  ins  Pfadfeld
  578. übernommen, eingelesen und in der Dateiliste dargestellt. Gleichzeitig
  579. wird er im Menu an den Anfang gesetzt, so daß er vom Löschen wieder so
  580. weit wie möglich entfernt ist.  So verbleiben die meistgenutzten Pfade
  581. am längsten im Menu.  Halten  Sie  bei  der  Auswahl die 'Shift'-Taste
  582. gedrückt,  dann  ersetzt  die  Suchmaske  am  Ende  dieses  Pfades die
  583. aktuelle Auswahlmaske im Pfadfeld.
  584.  
  585. Auch dann, wenn Sie eine  oder  mehrere  Dateien auswählen und die Box
  586. mit "Ok" (s. u.) verlassen, wird  der  aktuelle Pfad an den Anfang der
  587. zweiten Gruppe des Menus gesetzt. Damit enthält sie eine stets auf den
  588. neuesten Stand gebrachte Liste  der  8  meistbenutzten Pfade. Wenn Sie
  589. die aktuelle Konfiguration sichern ("Arbeit sichern", s. o.), wird der
  590. Inhalt  dieses   Menus   mitgesichert,   so   daß   Sie   sich   einen
  591. Ausgangszustand herstellen können,  der  von  Anfang  an  ein bequemes
  592. Arbeiten erlaubt.
  593.  
  594. In Version 1.70 sind die  automatischen Veränderungen dieses Menüs per
  595. Option abschaltbar. Dann bietet dieses  Menü  nur eine feste Liste von
  596. Pfaden zur einfachen Auswahl an.  Beim  "Pfad merken" werden dann auch
  597. keine Pfade herausgeschoben, sondern nur  ein Warnton ausgegeben, wenn
  598. das Menü voll ist. Sie können  aber  immer einen Pfad explizit aus dem
  599. Menü  entfernen,  wenn  Sie   bei   der  Auswahl  die  "Control"-Taste
  600. festhalten.
  601.  
  602. Die beiden fehlenden Befehle  im  Pfadmenü sind nur dann selektierbar,
  603. wenn in Ihrem System das GEM-Klemmbrett  definiert ist. Dies ist z. B.
  604. immer dann der Fall, wenn Sie  GEMINI als Desktop einsetzen. Mit "Pfad
  605. kopieren"  schreiben  Sie  den   aktuell   angezeigten   Pfad  in  das
  606. Klemmbrett. Mit  "Pfad  einfügen"  wird  der  Pfad  aus dem Klemmbrett
  607. gelesen und angezeigt. Diese Operation ist natürlich nur dann möglich,
  608. wenn das Klemmbrett auch Daten enthält.
  609.  
  610. Die  Shortcuts  für   diese   Kommandos   sind  'Shift-Control-C'  und
  611. 'Shift-Control-V'.
  612.  
  613.     Der Knopf "Ok"
  614.     --------------
  615.  
  616. Wenn der Tastaturfokus (der  doppelte  Rand) auf der Dateiliste steht,
  617. können Sie mit "Ok"  BoxKite  schließen,  und dem aufrufenden Programm
  618. Ihre Auswahl mitzuteilen.  Wenn  in  der  Dateiliste eine oder mehrere
  619. Dateien selektiert sind, so werden  dies ausgewählt. Wenn (mindestens)
  620. ein Ordner selektiert  ist,  wird  dieser  (bei  mehreren der oberste)
  621. geöffnet und sein  Inhalt  angezeigt.  Wenn  in  der Dateiliste nichts
  622. selektiert  ist,  dann  übergibt  BoxKite  dem  Anwendungsprogramm den
  623. Inhalt des Namensfeldes. Dieses  kann  auch einen Namen enthalten, der
  624. in der Liste noch nicht vorkommt.  Damit veranlassen Sie das jeweilige
  625. Anwendungsprogramm, eine neue Datei zu erzeugen.
  626.  
  627. Wenn der Tastaturfokus auf  dem  Namensfeld  steht  oder wenn Sie beim
  628. Klick auf "Ok" eine Shift-Taste festhalten,  wird immer der Inhalt des
  629. Namensfeldes zurückgegeben,  unabhängig  von  einer  Selektion  in der
  630. Liste. Diese Variante  wird  in  der  folgenden Situation interessant:
  631. Stellen Sie sich vor, Sie möchten eine Datei namens "TEST" anlegen, im
  632. aktuellen  Verzeichnis  existiert   aber   schon   eine  Datei  namens
  633. "TESTTEXT.TXT". Wenn  Sie  nun  den  Namen  "TEST"  eingeben, wird vom
  634. Autolocator  "TESTTEXT.TXT"  selektiert   und   beim  Klick  auf  "Ok"
  635. zurückgegeben. Wenn Sie aber den Fokus  auf das Namensfeld setzen (mit
  636. Mausklick oder "Tab") und dann "Ok" anwählen, erhalten Sie tatsächlich
  637. nur den Namen "TEST" zurück.
  638.  
  639. Falls  Sie  versuchen,   einer   TOS-Anwendung   lange  Dateinamen  zu
  640. übergeben,  erscheint  eine  Fehlerbox   mit  zwei  Wahlmöglichkeiten:
  641. "Weiter" und "Zurück". Mit "Weiter" übergeben  Sie die langen Namen an
  642. die Hauptapplikation. Wenn Sie diese Wahl treffen, sollten Sie wissen,
  643. was Sie tun.  Wenn  Sie  dagegen  "Zurück"  anklicken,  bleiben Sie in
  644. BoxKite. Die Darstellung wird  dann  auf kurze Namen zurückgeschaltet.
  645. Ihre Selektion  bleibt  dabei  erhalten,  so  daß  Sie  sie  mit einem
  646. weiteren "Ok" übergeben können. Es kann  allerdings sein, daß sich bei
  647. alphabetischer  Sortierung  die  Reihenfolge  der  Einträge  ein wenig
  648. ändert.  Die   Anzeige   dieser   Warnungen   können   Sie   über  den
  649. "Expertenmodus" unterdrücken.
  650.  
  651. Manche Programme verkraften nur eine  bestimmte Anzahl von Dateien und
  652. teilen dies BoxKite  mit;  sollten  Sie  in  einem  solchen  Fall mehr
  653. Dateien ausgewählt haben, so warnt  BoxKite  Sie mit einem Piepton und
  654. übergibt dem Programm nur die obersten Dateien.
  655.  
  656. Wenn der Tastaturfokus auf dem Pfadfeld steht und Sie dort einen neuen
  657. Pfad oder eine neue Auswahlmaske  eingegeben  haben,  so wird der dort
  658. eingegebene Pfad eingelesen  und  angezeigt.  Anschließend springt der
  659. Fokus auf die Dateiliste, damit Sie dort Ihre Auswahl treffen können.
  660.  
  661.     Der Knopf "Abbruch"
  662.     -------------------
  663.  
  664. Wie Sie sich sicher  schon  gedacht  haben,  dient  dieser Knopf dazu,
  665. BoxKite  zu  verlassen,   ohne   etwas  auszuwählen.  Wirklich  nichts
  666. weiter dabei.
  667.  
  668.     Das Größenfeld (das Symbol ganz rechts unten)
  669.     ---------------------------------------------
  670.  
  671. Wie schon wiederholt erwähnt,  können  Sie BoxKite wie ein GEM-Fenster
  672. vergrößern und verkleinern. Die Minimalgröße  ist auf eine Listenlänge
  673. von 10 Dateien im  normalen  Anzeigeformat ausgelegt. Die Maximalgröße
  674. (und damit die Zahl  der  angezeigten  Dateien)  ist  fast nur von der
  675. Bildschirmauflösung abhängig. "Fast"  bedeutet  in diesem Zusammenhang
  676. folgendes:  Die  Maximalzahl  der   gleichzeitig  angezeigten  Dateien
  677. beträgt 100. (Den Monitor möchte ich mal sehen.) Die Maximalbreite ist
  678. darauf ausgelegt, Dateinamen von  32  Zeichen länge nebst Größe, Datum
  679. und Uhrzeit anzuzeigen. Ein  größere  Breite würde zumindest in dieser
  680. Version von BoxKite  keinen  Gewinn  an  Information  mehr bringen. In
  681. Auflösungsstufen mit  nur  320  Pixel  Breite  (etwa  ST-niedrig) kann
  682. BoxKite auch TOS-Dateinamen nur  so  breit  anzeigen, daß die weiteren
  683. Angaben unsichtbar bleiben. Hier  ist  das  Größenfeld also nicht sehr
  684. nützlich. Wenn Sie die  aktuelle  Konfiguration  sichern ("Sichern" im
  685. Dialog "Optionen"),  wird  die  Größe  mit  abgespeichert,  so daß Sie
  686. BoxKite nach dem nächsten Booten in derselben Größe wieder vorfinden.
  687.  
  688.     Der Laufwerksknöpfe (Links von der Liste)
  689.     -----------------------------------------
  690.  
  691. Dieses Feld enthält  die  Laufwerksbuchstaben  von  'A' bis 'Z'. Durch
  692. Anklicken eines  Buchstabens  können  Sie  auf  ein  anderes  Laufwerk
  693. umschalten. Das aktuelle Laufwerk  wird schwarz hinterlegt. Laufwerke,
  694. die nicht in Ihrem  System  vorhanden  sind,  sind in dieser Box nicht
  695. anwählbar. Alternativ zur Mausbedienung können Sie mit der Kombination
  696. "Control"-Laufwerksbuchstabe das aktuelle Laufwerk wechseln.
  697.  
  698.     Der Sortierknopf (rechts oben)
  699.     ------------------------------
  700.  
  701. Hier bestimmen Sie, in welcher Weise die Dateiliste sortiert wird. Die
  702. meisten Sortiermodi sind  vom  Desktop  her  bekannt.  Der Knopf zeigt
  703. immer den aktuellen Modus an. Die Modi im Einzelnen:
  704.  
  705.     "Nach Namen": Sortiert die Dateien alphabetisch aufsteigend.
  706.     Ordner werden  unabhängig  vom  Sortiermodus  immer zuoberst
  707.     angezeigt. Ausnahme: Unsortiert.
  708.  
  709.     "Nach Typ":  Sortiert  die  Dateien alphabetisch aufsteigend
  710.     nach dem Dateityp (auch  Extension genannt). Im gewöhnlichen
  711.     TOS-Dateisystem sind das die 3  Buchstaben hinter dem Punkt,
  712.     bei anderen  Systemen  (wo  evtl.  ein  Name  mehrere Punkte
  713.     enthalten darf) alles hinter dem letzten Punkt. Bei gleichem
  714.     Typ wird nach den Namen sortiert.
  715.  
  716.     "Nach   Größe": Sortiert aufsteigend  nach  der  Größe  (die
  717.     Kleinen nach vorn). Bei  gleicher  Größe wird nach den Namen
  718.     sortiert.
  719.  
  720.     "Nach Datum": Sortiert absteigend nach Datum und Uhrzeit, d.
  721.     h. die jüngsten Einträge stehen oben. Bei gleicher Zeit wird
  722.     nach den Namen sortiert.
  723.  
  724.     "Unsortiert":   Zeigt  alle   Dateien   und  Ordner  in  der
  725.     Reihenfolge an, in der  sie  tatsächlich auf dem Datenträger
  726.     steht. Das kann schon mal wichtig sein; im AUTO-Ordner z. B.
  727.     bestimmt diese Reihenfolge die Reihenfolge der Ausführung.
  728.  
  729.     "Numerisch":    Dies   ist   ein   Zusatzschalter,  der  die
  730.     alphabetische Sortierung steuert. Wenn  er eingeschaltet ist
  731.     (erkennbar am  Häkchen),  werden  in  die Namen eingebettete
  732.     Zahlen erkannt und aufsteigend berücksichtigt. Beispiel: Die
  733.     Namen BRIEF1.TXT, BRIEF2.TXT und  BRIEF10.TXT erscheinen bei
  734.     normaler alphabetischer Sortierung in der Reihenfolge:
  735.  
  736.     BRIEF1.TXT
  737.     BRIEF10.TXT
  738.     BRIEF2.TXT
  739.  
  740.     Bei numerischer Sortierung sieht es so aus:
  741.  
  742.     BRIEF1.TXT
  743.     BRIEF2.TXT
  744.     BRIEF10.TXT
  745.  
  746.     "GROSS = klein": Dies  ist  auch ein Zusatzschalter. Wenn er
  747.     aktiv ist, werden  beim  Sortieren Groß- und Kleinbuchstaben
  748.     als gleich angesehen, wie  man  es von der deutschen Sprache
  749.     her  gewohnt   ist.   Andernfalls   wird   streng  nach  den
  750.     ASCII-Codes der Buchstaben sortiert, was dazu führt, daß die
  751.     Großbuchstaben vor den  Kleinbuchstaben  landen. Dann ähnelt
  752.     das Erscheinungsbild eher  den  Directory-Listen unter UN*X.
  753.     Im Zusammenhang mit  Dateisystemen,  die  nur Großbuchstaben
  754.     unterstützen, hat dieser Schalter natürlich keine Wirkung.
  755.  
  756.  
  757.     Die Masken (am rechten Rand)
  758.     ----------------------------
  759.  
  760. Am rechten Rand der Box  finden  Sie 10 Felder für Auswahlmasken. Wenn
  761. Sie eines dieser Felder anklicken, dann  werden aus dem aktuellen Pfad
  762. nur die Dateien angezeigt,  die  auf  diese  Maske  passen. Halten Sie
  763. dabei eine der 'Shift'-Tasten fest,  dann  wird  diese Maske mit einem
  764. Komma an die aktuell angezeigte  Maske  angehängt,  so daß die Dateien
  765. angezeigt werden, die auf  beide  Masken passen. Alternativ können Sie
  766. diese Maken auch mit den 10 Funktionstasten anwählen.
  767.  
  768. Wodurch wird nun der Inhalt  dieser  Felder bestimmt? Das oberste Feld
  769. enthält  immer  die  Maske,  die  das  Anwendungsprogramm  an  BoxKite
  770. übergeben hat. Das zweite Feld steht immer auf '*' (zeige alle Dateien
  771. an), da diese  Maske  sehr  häufig  gebraucht  wird.  Die restlichen 8
  772. Felder können Sie selbst  definieren.  Selektieren  Sie dazu eines der
  773. Felder  mit  einem   Doppelklick   oder  mit  gleichzeitig  gehaltener
  774. 'Control'-Taste. Dann öffnet sich  ein  Dialog,  in  dem Sie eine neue
  775. Maske eintragen können. Sie  werden  faststellen, daß der tatsächliche
  776. Inhalt einer solchen Maske weitaus  länger  sein  kann, als die Breite
  777. des Feldes vermuten läßt. Dies war erforderlich, damit BoxKite auch in
  778. niedrigen Bildschirmauflösungen noch läuft.  Intern wird natürlich die
  779. volle Länge Ihrer Eingabe gespeichert.
  780.  
  781. Der Inhalt der editierbaren  Maskenfelder  wird  natürlich bei "Arbeit
  782. sichern" in die INF-Datei geschrieben,  so  daß  er bei jedem Neustart
  783. wieder zur Verfügung steht.
  784.  
  785.     Der Längenknopf (unten links)
  786.     -----------------------------
  787.  
  788. Der Längenknopf ruft ein PopUp  auf,  in  dem Sie zwischen der Anzeige
  789. von TOS-Dateinamen und der  Anzeige  von  langen Dateinamen umschalten
  790. können.   Ist   MiNT    (oder    ein    anderes    System,   das   den
  791. 'Pdomain'-Mechanismus unterstützt) aktiv,  können  Sie hier zusätzlich
  792. eine Automatik aktivieren, die  vor möglichen Kompatibilitätsproblemen
  793. warnt. Nähere Erläuterungen finden Sie  im Abschnitt über Dateisysteme
  794. und Dateinamen.
  795.  
  796.  
  797.                 5. Dateioperationen
  798.                 -------------------
  799.  
  800. Wie oben schon  erwähnt,  stellt  BoxKite  Ihnen  auch die wichtigsten
  801. Dateioperationen  zur  Verfügung.  Sie  haben  sicher  schon  vor  der
  802. Situation gestanden, einen Text auf eine bestimmte Diskette sichern zu
  803. müssen, auf der  vor  lauter  Datenmüll  nicht  genug  Platz  war. Für
  804. BoxKite kein Problem: Hier  können  Sie  einfach den Datenmüll löschen
  805. und anschließend sichern.
  806.  
  807. Die Dateioperation residieren in  einem  Pop-Up-Menu  hinter dem Knopf
  808. "Funktionen".    Sie    können    auch     direkt    über    bestimmte
  809. Tastenkombinationen  ausgelöst  werden.   Sie   können  jede  laufende
  810. Operation mit den Tasten  "Esc"  oder  "Undo" abbrechen. Die einzelnen
  811. Punkte dieses Menus sind die folgenden:
  812.  
  813.     "Neues Objekt" (Control-Shift-N)
  814.     --------------------------------
  815.  
  816. Dieser Punkt gestattet es, im aktuellen Ordner einen neuen Ordner oder
  817. eine leere  Datei  (auch  das  ist  gelegentlich  nötig) anzulegen. Es
  818. öffnet sich eine kleine Dialogbox, in der Sie den neuen Namen eingeben
  819. und festlegen können, ob  ein  Ordner  oder  eine Datei erzeugt werden
  820. soll.
  821.  
  822.     "Information" (Alternate-I)
  823.     ---------------------------
  824.  
  825. Dieser Befehl liefert detailliertere  Informationen über die einzelnen
  826. momentan selektierten Objekte  (Ordner  und  Dateien).  Er  kann nicht
  827. aufgerufen werden, wenn nichts  selektiert  ist.  Sind mehrere Objekte
  828. selektiert, so wird eins  nach  dem  anderen  angezeigt, falls Sie den
  829. Befehl nicht unterbrechen (wie,  siehe  unten). Es wird eine Dialogbox
  830. angezeigt,  die  Name,  Erstellungsdatum   und  Uhrzeit  des  Objektes
  831. enthält. Für Dateien werden  auch  die  Größe und die TOS-Attributbits
  832. angezeigt, für Ordner dagegen Informationen über den Inhalt. Letzteres
  833. kann schon mal etwas  dauern,  wenn  der  Ordner viele Unterordner und
  834. Dateien  enthält.  Den  Namen   und   die  Dateiattribute  können  Sie
  835. verändern. Wenn Sie die Box mit "Ok" verlassen, werden geänderte Namen
  836. und Attribute übernommen  und  Informationen zum nächsten selektierten
  837. Objekt angezeigt, sofern noch  eines  vorhanden ist. Wenn Sie "Weiter"
  838. benutzen, geht BoxKite ohne Änderung zum nächsten Objekt über, und mit
  839. "Abbruch" beenden Sie den gesamten Befehl, ebenfalls ohne Änderung.
  840.  
  841. Tip: Mit Hilfe der  Dateiattribute  können  Sie eine Datei verstecken.
  842. Dazu schalten Sie das Bit "Versteckt" ein und die Bits "Schreibschutz"
  843. und "Archivbit" aus. Warum  ausgerechnet  diese Kombination nötig ist,
  844. weiß nur Atari...
  845.  
  846.     "Suchen" (Control-Shift-F)
  847.     --------------------------
  848.  
  849. Wenn Sie eine  bestimmte  Datei  öffnen  wollen  und  nicht mehr genau
  850. wissen, wo auf Ihrer Festplatte  sie  steckt  (auch eine Diskette kann
  851. ganz  schön  unübersichtlich  werden),   liefert  dieser  Befehl  eine
  852. Hilfestellung. Er durch sucht das  aktuelle und alle darin enthaltenen
  853. Verzeichnisse nach Dateien,  deren  Namen  auf  ein  bestimmtes Muster
  854. passen. In die Dialogbox tragen Sie das Suchmuster ein und starten die
  855. Suche mit "Ok".  Wenn  eine  passende  Datei gefunden wurde, erscheint
  856. eine Hinweisbox mit dem Dateinamen.  Gleichzeitig wird dahinter in der
  857. Dateiliste das  entsprechende  Verzeichnis  angezeigt.  Die Hinweisbox
  858. bietet Ihnen folgende Möglichkeiten:  Mit  "Ok"  beenden Sie die Suche
  859. und bleiben in  dem  Ordner,  in  dem  die  Datei  gefunden wurde, mit
  860. "Weiter" setzen Sie die Suche  fort  und  mit "Abbruch" beende Sie die
  861. Suche und kehren  ins  ursprüngliche  Verzeichnis  zurück. 
  862.  
  863.     "Kopieren" (Alternate-C, Merke: "Copy")
  864.     ---------------------------------------
  865.  
  866. Mit diesem Befehl können Sie  einzelne  Dateien und ganze Ordner nebst
  867. Inhalt kopieren. Er ist nur anwählbar,  wenn auch Objekte zum Kopieren
  868. selektiert sind. Als erstes fordert BoxKite  Sie mit einem Piepton und
  869. einer Meldung in der  Titelzeile  auf,  einen Zielordner zu bestimmen.
  870. Öffnen Sie dazu einfach  den  entsprechenden Ordner und quittieren Sie
  871. mit "Ok".  Danach  erscheint  eine  Dialogbox,  die  Sie  über  die zu
  872. kopierenden Datenmengen informiert. Wenn  darin die Option "Datum/Zeit
  873. beibehalten" selektiert (angekreuzt) ist, erhalten die Kopien dieselbe
  874. Zeitmarkierung wie die Ursprungsdateien, ansonsten  werden sie auf das
  875. aktuelle Datum  und  die  aktuelle  Uhrzeit  gesetzt.  Starten Sie den
  876. Kopiervorgang mit "Ok".
  877.  
  878. Wenn ein  Namenskonflikt  entsteht,  d.  h.  im  Zielordner eine Datei
  879. existiert, die  denselben  Namen  wie  eine  zu  kopierende Datei hat,
  880. erscheint eine Hinweisbox,  die  Ihnen  Gelegenheit  gibt,  für die zu
  881. kopierende Datei einen neuen  Namen  auszuwählen. Gerade beim Arbeiten
  882. mit  verschiedenen  Dateisystemen  können   solche  Situationen  etwas
  883. unerwartet auftreten. Kopiert man etwa von einem Minix-Dateisystem mit
  884. 32 Zeichen langen Namen auf ein TOS-Dateisystem mit "8-Punkt-3"-Namen,
  885. so werden die langen Namen  entsprechend zurechtgestutzt. Dabei können
  886. leicht Überschneidungen entstehen.
  887.  
  888.     "Verschieben" (Alternate-M)
  889.     ---------------------------
  890.  
  891. Funktioniert  genauso  wie  "Kopieren",  außer  daß  die Ausgangsdatei
  892. anschließend gelöscht wird. Diese Funktion  ist nur in der Vollversion
  893. enthalten.
  894.  
  895.     "Touch" (Alternate-H)
  896.     ---------------------
  897.  
  898. Eine Datei zu "Touchen"  (sprich:  Betatschen)  bedeutet, Ihre Datums-
  899. und Zeitmarkierung auf das aktuelle Datum  und die aktuelle Uhrzeit zu
  900. setzen. Dies  ist  hauptsächlich  für  Programmierer  und TeX-Benutzer
  901. interessant,  die  das  Verhalten   von   Utilities  wie  'make'  oder
  902. bestimmten  Entwicklungsumgebungen  beeinflussen  wollen.  Auch dieser
  903. Befehl arbeitet bei selektierten Ordnern rekursiv, d. h. er bearbeitet
  904. Dateien in den Ordnern,  Dateien  in  den  Ordnern  in den Ordnern,...
  905. Diese Funktion ist nur in der Vollversion zugänglich.
  906.  
  907.     "Löschen" (Alternate-D, Merke: "Delete")
  908.     ----------------------------------------
  909.  
  910. Mit diesem Befehl können Sie  Ordner  und Dateien löschen, etwa um auf
  911. dem  Datenträger  Platz  zu  schaffen.  Auch  dieser  Befehl  arbeitet
  912. rekursiv. Seien Sie also vorsichtig.
  913.  
  914.     "Über BoxKite" (Alternate-B)
  915.     ----------------------------
  916.  
  917. Dieser Menupunkt zeigt eine  Dialogbox mit Copyright-Informationen an.
  918. Mit dem Knopf "Ok" verlassen Sie diese Box. Mit "Info" zeigen Sie eine
  919. weitere Infobox an. In  der  öffentlichen Version von BoxKite befindet
  920. sich hier auch der Button "Registrieren", mit dem Sie eine Vollversion
  921. erzeugen können, sofern Sie die  Sharewaregebühr bezahlt haben und den
  922. Schlüssel besitzen.
  923.  
  924.  
  925.                 6. Optionen
  926.                 -----------
  927.  
  928. Über den Knopf "Optionen" erreichen Sie  einen weiteren Dialog, in dem
  929. Sie eine Reihe von Grundeinstellungen für die Arbeitsweise von BoxKite
  930. treffen und abspeichern können. Aus  Platzgründen werden die einzelnen
  931. Optionen in  einer  Listbox  aufgeführt,  in  der  die eingeschalteten
  932. Optionen mit Häkchen gekennzeichnet sind. Durch einen Mausklick können
  933. Sie eine Option ein-  oder  ausschalten.  Alternativ zeigt die Listbox
  934. einen Auswahlbalken an, den Sie  mit den Pfeiltasten versetzen können.
  935. Die Option unter  dieser  Auswahl  wird  mit  der  Leertaste ein- oder
  936. ausgeschaltet.
  937.  
  938. Schließlich enthält dieser Dialog noch drei Buttons:
  939.  
  940.     "Abbruch":  Verläßt  die  Box,  ohne  die  Einstellungen  zu
  941.     übernehmen.
  942.  
  943.     "Ok": Verläßt den Dialog und übernimmt die Einstellungen.
  944.  
  945.     "Sichern": Verläßt den  Dialog,  übernimmt die Einstellungen
  946.     und sichert den Zustand  von  BoxKite,  d.  h. die Größe der
  947.     Box, die Einstellungen dieses Dialogs, den Sortiermodus, die
  948.     gespeicherten Pfade und  Suchmasken  (s.  u.)  in eine Datei
  949.     namens 'BOXKITE.INF'. Diese  Datei  wird  bei jedem Neustart
  950.     von BoxKite gelesen und ausgewertet,  so daß Sie wieder Ihre
  951.     Lieblingskonfiguration vorfinden. Pfade  und Dateitypen, die
  952.     von der Hauptapplikation an BoxKite übergeben wurden, werden
  953.     nicht gespeichert. Diese Funktion ist nur in der Vollversion
  954.     zugänglich.
  955.  
  956. Nun zur Beschreibung der Optionen im Einzelnen:
  957.  
  958.     Versteckte Dateien anzeigen
  959.     ---------------------------
  960.  
  961. TOS bietet die Möglichkeit,  Dateien  im Desktop unsichtbar zu machen,
  962. um sie  vor  unvorsichtigen  Zugriffen  zu  schützen  oder die Anzeige
  963. übersichtlicher zu gestalten. Manchmal  muß  man  aber ausgerechnet so
  964. eine Datei bearbeiten. Mit diesem Menupunkt  können Sie sie in BoxKite
  965. sichtbar machen.
  966.  
  967.     Doppelklick öffnet Ordner
  968.     -------------------------
  969.  
  970. Wenn dieser Punkt aktiviert ist  wird  ein Ordner mit Einfachklick nur
  971. selektiert. Um ihn zu öffnen, benötigen  Sie einen Doppelklick - genau
  972. wie  in  den  Fenstern   im   GEM-Desktop.  (Sie  erinnern  sich:  Ein
  973. Rechtsklick tuts auch.)
  974.  
  975.     In  Namen  alle  Zeichen  zulassen
  976.     ----------------------------------
  977.  
  978. Mit diesem Menupunkt schalten  Sie  die Beschränkung des in Dateinamen
  979. erlaubten  Zeichensatzes  ein  oder   aus.   Wenn   Sie  nur  mit  dem
  980. TOS-Dateisystem  arbeiten,   ist   es   sicherer   die   Einschränkung
  981. einschalten  (näheres  in  Abschnitt  7).   Es  gibt  allerdings  auch
  982. Anwendungsprogramme, die  den  Fileselector  dazu  "mißbrauchen",  vom
  983. Anwender eine Dateimaske  zu  erfragen,  die  Wildcards  ('*' und '?')
  984. enthält. Um Wildcards ins  Namensfeld  von  BoxKite einzugeben, müssen
  985. Sie die Einschränkung abschalten.
  986.  
  987.     Box immer mit  Maximalhöhe  öffnen
  988.     ----------------------------------
  989.  
  990. Wenn dieser Menupunkt aktiviert ist, nutzt BoxKite beim Öffnen der Box
  991. immer die gesamte  senkrechte  Bildschirmauflösung  aus,  um  so viele
  992. Dateien   wie   möglich    anzuzeigen.    Danach    können   Sie   ihn
  993. selbstverständlich wieder  verkleinern.  Auch  in  dieser  Betriebsart
  994. erscheint BoxKite immer in der Breite, die Sie ausgewählt haben.
  995.  
  996.     *.PRG zeigt alle  Programme  an
  997.     -------------------------------
  998.  
  999. Wenn dieser Punkt aktiv  ist,  erhält  die  Suchmaske  "*.PRG" am Ende
  1000. einer Pfadangabe eine Sonderbedeutung: Sie  zeigt alle die Dateien an,
  1001. die laut  GEM-Konvention  ausführbare  Programme  sind.  Das  sind die
  1002. Dateien mit den Typen PRG, APP, TOS,  TTP, GTP. Dieser Modus ist z. B.
  1003. im Zusammenhang  mit  dem  Menubefehl  "Execute..."  der Purbo-C-Shell
  1004. interessant.
  1005.  
  1006.     Undo bricht den Dialog  ab
  1007.     --------------------------
  1008.  
  1009. Mit diesem Menupumkt wird  die  Bedeutung der "Undo"-Taste festgelegt.
  1010. Ist er abgehakt, dann wirkt "Undo" wie ein Klick auf "Abbruch" (eigens
  1011. für die Selectric-Freunde unter  Ihnen).  Andernfalls wechseln Sie mit
  1012. "Undo" zum höheren Verzeichnis.
  1013.  
  1014.     Klick rechts = Doppelklick
  1015.     --------------------------
  1016.  
  1017. Wenn diese Option aktiv ist,  können  Sie  an jede Funktion, die einen
  1018. Doppelklick erfordert, auch mit  einem  einfachen Klick auf die rechte
  1019. Maustaste auslösen.  (Diese  Option  war  in älteren BoxKite-Versionen
  1020. immer  aktiv.  Es  hat  sich  jedoch  herausgestellt,  daß  sie  nicht
  1021. kompatibel mit bestimmten  unsauberen  Programmen,  etwa GFA-Basic bis
  1022. Version 3.x ist. Daher ist sie nunmehr abschaltbar.)
  1023.  
  1024.     3D-Optik im Dialog
  1025.     ------------------
  1026.  
  1027. Die 3D-Optik,  die  mit  den  Falcon-TOS-Versionen  und  mit  MultiTOS
  1028. eingeführt  wurde,  hat   in   der   TOS-Szene   zu  den  herrlichsten
  1029. Diskussionen geführt. Darum können  Sie  sie  in BoxKite nach Belieben
  1030. ein- und ausschalten.
  1031.  
  1032.     Dialog als GEM-Fenster
  1033.     ----------------------
  1034.  
  1035. Wenn Sie diesen  Punkt  anklicken,  wird  der  BoxKite bei zukünftigen
  1036. Aufrufen als GEM-Fenster dargestellt. Im  Unterschied zum 3D-Look wird
  1037. diese Einstellung nicht  sofort  wirksam,  sondern  erst beim nächsten
  1038. Aufruf von BoxKite. Der  Vorzug  dieser Darstellungsweise liegt darin,
  1039. daß unter Multitasking-Betriebssystemen  Hintergrundprogramme nicht in
  1040. dem Moment  angehalten  werden,  in  dem  sie  eine  Bildschirmausgabe
  1041. machen.
  1042.  
  1043. In BoxKite 1.71 werden Sie  feststellen,  daß die Box sich nicht immer
  1044. als Fenster öffnet, auch wenn  Sie  diese Auswahl getroffen haben. Das
  1045. kann einmal daran liegen,   daß  BoxKite als Unterdialog eines anderen
  1046. Dialoges erscheint,  der  selbst  nicht  in  einem  Fenster liegt. Ein
  1047. Beispiel    dafür    ist    der    GEMINI-Dialog    zum    Laden   von
  1048. Hintergrundbildern.  Der  andere  mögliche  Grund  ist  der,  daß  die
  1049. Hauptapplikation  einfach  nicht  darauf   vorbereitet  ist,  daß  der
  1050. Fileselector ein  Fenster  sein  kann,  und  darum  im  Betriebssystem
  1051. bestimmte Sperren aktiviert.
  1052.  
  1053. Eine andere systembedingte Einschränkung des  Betriebes von BoxKite im
  1054. Fenster  ist  die,   daß   in   dieser   Situation   BoxKite  für  die
  1055. Hauptapplikation das Zeichnen von  hintenliegenden Fenstern übernehmen
  1056. muß. Da BoxKite nicht wissen kann,  was in diesen Fenstern dargestellt
  1057. werden soll, behilft er sich  mit  bunten  Logos. Seien Sie also nicht
  1058. überrascht,  wenn  sich   die   Fenster   Ihres  Programmes  plötzlich
  1059. verändern, falls Sie BoxKite  verschieben.  Dieses  Problem ist nur zu
  1060. umgehen,  wenn  die  Hauptapplikationen  an  diese  Situation angepaßt
  1061. werden. BoxKite  bietet  dazu  eine  Schnittstelle  an,  die im Anhang
  1062. beschrieben wird.
  1063.  
  1064. Aufgrund dieser  Einschränkungen  ist  der  Fensterbetrieb  in BoxKite
  1065. abschaltbar.
  1066.  
  1067.     Pfade automatisch merken
  1068.     ------------------------
  1069.  
  1070. Mit dieser Option werden  die  automatischen Veränderungen im Pfadmenü
  1071. (s. o.) ein- oder ausgeschaltet.
  1072.  
  1073.     Farbige Hervorhebungen
  1074.     ----------------------
  1075.  
  1076. Mit dieser Option  schalten  Sie  die  farbige Anzeige von Programmen,
  1077. Ordnern und Links aus bzw.  ein.  Dieser Schalter hat natürlich nur in
  1078. Farbauflösungen eine Auswirkung.
  1079.  
  1080.     Box stets an Mausposition öffnen
  1081.     --------------------------------
  1082.  
  1083. Ist diese Option aktiviert, so wird  BoxKite nach Möglichkeit stets in
  1084. der Nähe  des  Mauszeigers  geöffnet.  Dies  ist  besonders auf großen
  1085. Monitoren interessant.
  1086.  
  1087.  
  1088.                 7. Einige theoretische Anmerkungen
  1089.                 ----------------------------------
  1090.  
  1091. Dieser Abschnitt stellt einige der  erweiterten Möglichkeiten von MiNT
  1092. und MultiTOS zur Dateibehandlung  kurz  dar und erläutert, wie BoxKite
  1093. Ihnen helfen kann,  aus  diesen  Möglichkeiten  den  meisten Nutzen zu
  1094. ziehen. Dazu enthält  BoxKite  einige  weitere Bedienungselemente, die
  1095. nur unter MiNT sichtbar  sind.  Diesen Abschnitt können Sie eigentlich
  1096. überspringen, wenn Sie MiNT  oder  MultiTOS  nicht einsetzen. Aber wer
  1097. weiß, vielleicht kommen Sie ja bei der Lektüre auf den Geschmack?
  1098.  
  1099. Der oberste Abschnitt ist  natürlich  inzwischen überholt. MagiC 3 und
  1100. MagiCMac können auch  mit  langen  Dateinamen  umgehen. Dadurch werden
  1101. diese Möglichkeiten in BoxKite natürlich noch interessanter.
  1102.  
  1103.     Dateisysteme & Dateinamen
  1104.     -------------------------
  1105.  
  1106. Was sind nun  eigentlich  Dateisysteme?  Warum  sind  lange Dateinamen
  1107. interessant?
  1108.  
  1109. Ein Dateisystem ist  derjenige  Teil  des  Betriebssystems,  der dafür
  1110. verantwortlich ist, ob  und  wie  die  Daten  auf  den  Disketten oder
  1111. Festplatten gespeichert werden.  In  das  Betriebssystem  TOS  ist ein
  1112. Dateisystem eingebaut, das  auf  Kompatibilität  mit  MS-DOS (just say
  1113. no!)  ausgelegt  ist.  Diese  Entscheidung   brachte  aber  neben  der
  1114. Möglichkeit, (fast)  ohne  Probleme  Disketten  mit PCs auszutauschen,
  1115. auch einige Unannehmlichkeiten mit sich: Da ist einmal die nicht immer
  1116. berauschende Geschwindigkeit, und zum anderen  die Beschränkung auf 12
  1117. Zeichen lange Dateinamen, die nur  Großbuchstaben enthalten können und
  1118. im bekannten "8-Punkt-3"-Format vorliegen müssen.  Da muß man manchmal
  1119. viel Phantasie aufbringen, um  vom  Namen  auf  den Inhalt einer Datei
  1120. schließen zu können.
  1121.  
  1122. Für  dieses  Problem   zeichnet   sich   aber   eine  Lösung  ab:  Die
  1123. Betriebssystemerweiterung MiNT, die  auch  die  Grundlage von MultiTOS
  1124. bildet,  ist  so  offen  ausgelegt,  daß  man  ohne  weiteres  bessere
  1125. Dateisysteme  einbinden  kann.  Ein   solches   System  ist  etwa  das
  1126. Minix-Dateisystem von Steven Henson  (in  jeder gut sortierten Mailbox
  1127. erhältlich), das neben anderen Vorteilen wesentlich längere Dateinamen
  1128. mit Groß-  und  Kleinbuchstaben  zuläßt.  Hier  kann  eine  Datei etwa
  1129. 'Kapitel.3.Versuch.2.TXT' anstatt 'KAP3VER2.TXT' heißen. Dem Vernehmen
  1130. nach können auch MagiC 3 und  MagiCMac Dateisysteme laden. Auf dem Mac
  1131. ist dies sogar erforderlich, um  auf  die Daten auf Mac-Disketten bzw.
  1132. -Platten korrekt zuzugreifen.
  1133.  
  1134. BoxKite kann unter diesen  Systemen  Dateien  mit  Namen von bis zu 32
  1135. Zeichen mit gemischter Groß-  und  Kleinschreibung anzeigen. Die Namen
  1136. dürfen auch beliebig viele  Punkte  enthalten. In anderen Boxen werden
  1137. längere Namen so verstümmelt,  daß  sie  auf die "8-Punkt-3"-Regel des
  1138. TOS-Dateisystems  passen.   Das   Minix-Dateisystem   läßt   zwar  bei
  1139. entsprechender Einstellung noch längere  Namen  zu, doch leidet meines
  1140. Wissens dann die Effizienz.
  1141.  
  1142. BoxKite versucht, in der Dateiliste  Namen, Größe und Erstellungsdatum
  1143. der Dateien anzuzeigen. Dies ist  von  der maximal möglichen Länge der
  1144. Namen und von der aktuellen Breite  der  Box  abhängig, d. h. wenn die
  1145. Box gerade breit genug für  32  Zeichen  lange Namen ist, verschwinden
  1146. die Zusatzinformationen. Wenn  Sie  dann  BoxKite  mit  dem Größenfeld
  1147. verbreitern, werden die Zusatzinformationen wieder sichtbar.
  1148.  
  1149. Die Länge des Namensfeldes von  BoxKite entspricht immer der maximalen
  1150. Länge eines Dateinamens im aktuellen Dateisystem. Ebenso gibt das Feld
  1151. den Punkt vor,  wenn  das  Dateisystem  vom  Typ  "8-Punkt-3" ist (was
  1152. leider noch  meistens  der  Fall  ist).  Wenn  das  Dateisystem keinen
  1153. Unterschied zwischen Groß- und Kleinbuchstaben macht (ebenfalls leider
  1154. noch meistens der  Fall),  werden  alle  Eingaben  in  dieses  Feld in
  1155. Großbuchstaben gewandelt. Sie können  also  nichts falsch machen. Wenn
  1156. Sie MiNT einsetzen, probieren Sie es mal im Laufwerk U: aus.
  1157.  
  1158. Wie so oft erhebt sich  auch  in diesem Zusammenhang die leidige Frage
  1159. nach  der   Kompatibilität,   d.   h.   der   Verträglichkeit  bereits
  1160. existierender  Programme  mit  diesen  neuen  Möglichkeiten.  Es  soll
  1161. nämlich Programme geben, die  nur  Speicherplatz für Dateinamen von 12
  1162. Zeichen reservieren. Wenn man  diesen  längere Namen übergibt, stürzen
  1163. sie u. U. ab und  nehmen  alle  erreichbaren  Daten  mit in den Orkus.
  1164.  
  1165. Leider gibt es im Allgemeinen  keine Möglichkeit, solche Übeltäter von
  1166. vornherein zu erkennen und dingfest zu machen. Dazu müßte BoxKite wohl
  1167. in  der   Lage   sein,   durch   bloße   Betrachtung   des  Programmes
  1168. festzustellen, ob dieses lange  Dateinamen  verträgt.  Das scheint mir
  1169. aber äquivalent zu einer Lösung des Halteproblems zu sein ;-)
  1170.  
  1171. Daher bleibt  die  Verantwortung  letztlich  beim  Anwender,  also bei
  1172. Ihnen. Sie können  BoxKite  über  den  Namensknopf  so einstellen, daß
  1173. entweder  nur   TOS-Namen   oder   lange   Dateinamen  angezeigt  oder
  1174. zurückgeliefert werden. Unter MiNT (oder  anderen Systemen, die diesen
  1175. Mechanismuns unterstützten - mir ist  aber noch keines bekannt) können
  1176. Sie  zusätzlich  eine  Warnautomatik  einschalten,  die  auf  mögliche
  1177. Kompatibilitätsprobleme hinweist. Die Theorie,  die dem zugrundeliegt,
  1178. ist die Folgende:
  1179.  
  1180. Unter  MiNT  lassen  sich   Programme   in   zwei  Klassen  einteilen:
  1181. MiNT-Anwendungen  und  TOS-Anwendungen.  Eine  MiNT-Anwendung zeichnet
  1182. sich dadurch aus, daß sie mit  den erweiterten Möglichkeiten von MiNT,
  1183. insbesondere  mit   langen   Dateinamen   umgehen   kann.   Von  einer
  1184. TOS-Anwendung kann man  dies  nicht  annehmen,  und  MiNT verfolgt die
  1185. Philosophie,   einer   solchen    Anwendung    auch    nur   auf   das
  1186. "8-Punkt-3"-Format verkürzte  Dateinamen  zu  zeigen.  
  1187.  
  1188. Diese  Philosophie  ist  auch  nicht  ganz  unproblematisch.  Es  kann
  1189. durchaus vorkommen, daß zwei verschiedene  Namen,  die sich z. B. erst
  1190. im 10. oder 12. Zeichen  unterscheiden,  in der verkürzten Form gleich
  1191. aussehen und dann  von  Anwendungsprogrammen  nicht mehr unterschieden
  1192. werden können.  Wenn  Sie  schon  gezwungen  sind,  TOS-Anwendungen zu
  1193. benutzen, können Sie diesem Problem  dauerhaft nur dadurch ausweichen,
  1194. daß Sie schon bei der  Neuanlage  von  Dateien die Namen so auswählen,
  1195. daß sie an den ersten 8  Zeichen  des  Namens und den ersten 3 Zeichen
  1196. der Erweiterung eindeutig zu identifizieren  sind.  Da die Namen z. B.
  1197. im Minix-Dateisystem auch mehrere  Punkte  enthalten dürfen, ist unter
  1198. der Erweiterung  alles  zu  verstehen,  was  hinter  dem letzten Punkt
  1199. steht.
  1200.  
  1201. BoxKite ist nun in der Lage, festzustellen, ob er von einer MiNT- oder
  1202. einer TOS-Anwendung aus aufgerufen  wurde  (Für  Insider: Er prüft, ob
  1203. der aktuelle Prozeß in  der  MiNT-Domain  läuft  und ob evtl. noch ein
  1204. Accessory mit im Spiel ist).  Wenn  Sie dann versuchen, lange Namen an
  1205. die aufrufende Anwendung  zurückzugeben,  wird eine Warnung angezeigt.
  1206. Dann können Sie die langen Namen immer noch zurückgeben; Sie sind aber
  1207. selbst für die Folgen verantwortlich.
  1208.  
  1209. Selbstverständlich  bleiben   die   Autoren  von  Anwendungsprogrammen
  1210. aufgefordert,  dafür  zu  sorgen,   daß   ihre  Programme  mit  langen
  1211. Dateinamen zurechtkommen.
  1212.  
  1213.     Nochmal Dateinamen
  1214.     ------------------
  1215.  
  1216. BoxKite hilft auch noch  dabei,  ein anderes Kompatibilitätsproblem zu
  1217. lösen: Laut offizieller Dokumentation dürfen  unter TOS Dateinamen nur
  1218. bestimmte   Zeichen   enthalten,    u.    a.    keine   Umlaute.   Das
  1219. Minix-Dateisystem dagegen kennt  solche  Einschränkungen nicht. Um die
  1220. Lage vollends  zu  verwirren,  wissen  zumindest  einige TOS-Versionen
  1221. nichts davon, daß sie diese  Zeichen eigentlich gar nicht beherrschen,
  1222. und verarbeiten z.  B.  die  Umlaute  klaglos.  Auf  der anderen Seite
  1223. existieren angeblich Anwendungsprogramme,  die  Dateinamen mit solchen
  1224. Zeichen schlecht vertragen.
  1225.  
  1226. In BoxKite können Sie  die  Beachtung  von solchen Einschränkungen des
  1227. Zeichensatzes ein- und ausschalten. Wenn der Zeichensatz eingeschränkt
  1228. ist, können Sie Zeichen, die  laut der TOS-Dokumentation nicht erlaubt
  1229. sind (nachzulesen im  ATARI  Profibuch,  Sybex,  12.  Auflage 1992, S.
  1230. 160), gar nicht erst  eingeben.  Ist der Zeichensatz nicht beschränkt,
  1231. dann dürfen Ihre  Dateinamen  alle  Zeichen  außer  '\',  '/'  und ':'
  1232. enthalten.  Diese  Zeichen  sind  ausgenommen,  da  sie  von  TOS  als
  1233. Trennzeichen für die  Namen  von verschachtelten Ordnern interpretiert
  1234. werden. Ansonsten ist alles erlaubt.
  1235.  
  1236. Das heißt aber nicht, daß auch alles  ratsam wäre. Wenn Sie z. B. eine
  1237. Textshell (wie ksh,  sh,  bash,  mintshel  oder Mupfel) einsetzen, und
  1238. wenn Zeichen, die für die Shell eine besondere Bedeutung haben (häufig
  1239. sind das '|', '>', '$'  u.  ä.)  in Ihren Dateinamen vorkommen, können
  1240. können Sie eventuell  diese  Dateien  von  der  Shell  aus  nicht ohne
  1241. weiteres ansprechen. Dann  müssen  Sie  auf  einen  Mechanismus in der
  1242. Shell zurückgreifen, der  diesen  Spezialzeichen  ihre Bedeutung nimmt
  1243. (in den Handbüchern meist als 'Quoting' bezeichnet).
  1244.  
  1245. Das TOS-Dateisystem hat die  Eigenart  (Bug? Feature?), daß bei Namen,
  1246. die Leerzeichen  enthalten,  alles  ab  dem  Leerzeichen abgeschnitten
  1247. wird. '*'  und  '?'  haben  noch  eigenartigere  Auswirkungen. Umlaute
  1248. dagegen  werden  meines  Wissens  von  den  meisten  Versionen  sauber
  1249. verarbeitet. Dennoch  muß  hier  eine  deutliche Warnung ausgesprochen
  1250. werden: Es ist nicht garantiert, daß sich das TOS-Dateisystem in allen
  1251. Versionen genau so  verhält  oder  daß  es  sich  bis  in alle Zukunft
  1252. weiterhin  so  verhalten   wird.   Es   ist   durchaus   möglich,  daß
  1253. TOS-Versionen existieren oder in  Zukunft  erscheinen,  in denen nicht
  1254. erlaubte Zeichen in  Dateinamen  zu  Abstürzen und/oder Datenverlusten
  1255. führen. Wenn Sie also dem TOS-Dateisystem solche Dateinamen vorsetzen,
  1256. handeln Sie auf eigene Verantwortung.
  1257.  
  1258.     Symbolische Links
  1259.     -----------------
  1260.  
  1261. Eine  weitere  hübsche  Eigenschaft  von  MiNT  sind  die  sogenannten
  1262. symbolischen Links. Dabei handelt  es  sich  um eine Möglichkeit, eine
  1263. Datei unter zwei  verschiedenen  Namen  in  zwei verschiedenen Ordnern
  1264. anzusprechen.  "Wozu  ist  denn  das   gut?"  werden  Sie  sich  jetzt
  1265. vielleicht fragen.
  1266.  
  1267. Stellen Sie sich etwa vor, daß die Programme und Daten, die Sie häufig
  1268. benötigen, in  Ordnern  liegen,  die  über alle Festplattenpartitionen
  1269. verteilt sind,  zum  Beispiel  C:\WORDPLUS\TEXTE\POST\LIEBESBR.IEF und
  1270. D:\DATABASE\PRIVAT\ADRESSEN. Dann  müssen  Sie  sich  immer  von einem
  1271. Laufwerk zum anderen durchklicken,  um  diese  Daten zu erreichen. Der
  1272. gewiefte Anwender einer  modernen  Shell  (etwa  der neue Desktop oder
  1273. Gemini) wird nun  diese  Ordner  als  Icons auf dem Desktophintergrund
  1274. plazieren. Solange man nur mit  der  Shell arbeitet, ist das auch sehr
  1275. hilfreich. Versucht man aber,  eine  dieser  Dateien von einer anderen
  1276. Anwendung aus zu öffnen, darf man sich wieder durch alle Laufwerke und
  1277. Ordner klicken.
  1278.  
  1279. Unter  MiNT  ist  das  anders.   Hier   können  Sie  mit  Hilfe  eines
  1280. symbolischen  Links  dafür  sorgen,   daß   jeder  dieser  Ordner  ein
  1281. "Doppelleben" im Laufwerk U: führt.  Dann  liegt alles, was Sie häufig
  1282. brauchen,  in   U:   schön   nebeneinander,   und   wird   von   ALLEN
  1283. Anwendungsprogrammen dort  gefunden.  Die  beiden  Bandwurmnamen  oben
  1284. können Sie damit z. B. als U:\LIEBESBR.IEF und U:\ADRESSEN ansprechen.
  1285.  
  1286. Um es nochmal deutlich zu sagen: Dabei werden keine Daten kopiert; Sie
  1287. sprechen nur je eine Datei unter zwei verschiedenen Namen an. Wenn Sie
  1288. also  U:\LIEBESBR.IEF  verändern,   werden   Sie   die  Änderungen  in
  1289. C:\WORDPLUS\TEXTE\POST\LIEBESBR.IEF wiederfinden.
  1290.  
  1291. Wie legt man nun  einen  solchen  Link  am  sinnvollsten an? Bei jedem
  1292. Start von MiNT, also beim  Booten  des  Rechners wird eine Steuerdatei
  1293. namens MINT.CNF  ausgeführt.  Unter  anderem  kann  diese  Datei  auch
  1294. Befehle zum Anlegen von  symbolischen  Links enthalten. Die Links, die
  1295. Sie dort eintragen, werden bei  jedem  Start  des Systems angelegt und
  1296. stehen damit ohne weiteren Aufwand immer  zur Verfügung. Für das erste
  1297. Beispiel lautet der Befehl:
  1298.  
  1299. sln C:\WORDPLUS\TEXTE\POST\LIEBESBR.IEF U:\LIEBESBR.IEF
  1300.  
  1301. BoxKite  markiert  symbolische  Links  in   der  Anzeige  durch  einen
  1302. vorangestellten Punkt. Ferner  steht  eine  Möglichkeit zur Verfügung,
  1303. einen Link aufzulösen, d. h.  herauszufinden, wie das fragliche Objekt
  1304. wirklich heißt und wo es steht.
  1305.  
  1306. Ferner enthält unter MiNT der  Kopf  der  Dateiliste von BoxKite einen
  1307. weiteren Knopf, der mit einem Gleichheitszeichen markiert ist und über
  1308. die Tastenkombination "Alternate-0" angesprochen  werden kann. Wenn in
  1309. der Dateiliste ein symbolischer  Link  selektiert  ist, können Sie ihn
  1310. mit dieser Funktion auflösen.  Dann  zeigt BoxKite das Verzeichnis an,
  1311. in dem sich  das  Objekt  tatsächlich  befindet.  Der  wahre  Name des
  1312. Objektes erscheint im Namensfeld. Dieser Knopf ist nicht wählbar (grau
  1313. dargestellt), wenn kein symbolischer Link selektiert ist.
  1314.  
  1315. Wenn Sie  sich  unter  MiNT  die  '?'-Funktion  im  Verzeichnis U:\C\*
  1316. aufrufen, erhalten  Sie  die  Information  über  den  freien Platz auf
  1317. Laufwerk C: anstelle der wenig ergiebigen Angabe, auf U: seien 0 Bytes
  1318. von 0 frei. Das gleiche gilt, wenn Sie  z. B. einen Ordner auf C: über
  1319. einen symbolischen Link auf U: ansprechen.
  1320.  
  1321.  
  1322.             Anhang: Technische Interna
  1323.             --------------------------
  1324.  
  1325. Dieser Abschnitt beschäftigt sich mit  einigen technischen Interna von
  1326. BoxKite.  Er  ist  vermutlich   in   erster  Linie  für  Programmierer
  1327. interessant. Also gleich in die Vollen:
  1328.  
  1329. BoxKite verbiegt die Vektoren für  Trap  #2 (GEM) und Trap #13 (BIOS).
  1330. Die XBRA-Kennung ist 'HBFS'.
  1331.  
  1332. Das Einschachteln des  'fsel_[ex]input()'-Aufrufes in 'wind_update()',
  1333. das in älteren Versionen  dieser  Doku  empfohlen wurde, ist natürlich
  1334. problematisch, falls der Fileselector im Fenster läuft.
  1335.  
  1336. BoxKite legt zwei Cookies an: Zum einen den Standardcookie 'FSEL', zum
  1337. anderen einen eigenen  Cookie  namens  'HBFS'.  Über den 'FSEL'-Cookie
  1338. wird   eine    Teilmenge    der    Selectric™-Programmierschnittstelle
  1339. realisiert.  Diese   Schnittstelle   wurde   von   Stefan  Radermacher
  1340. entwickelt, dem ich hiermit für  die Genehmigung zur Verwendung dieser
  1341. Informationen   danke.   Der   Wert   des   'HBFS'-Cookies   ist   die
  1342. Einsprungadresse  des  Trap-2-Handlers  von  BoxKite.  Wenn  einer der
  1343. beiden Cookies beim Start  von  BoxKite  schon existiert, wird BoxKite
  1344. nicht installiert, da in diesem  Fall  zu  vermuten ist, daß schon ein
  1345. anderer residenter  Fileselector  installiert  ist  (der  Klügere gibt
  1346. nach).
  1347.  
  1348. Auch auf die Gefahr hin, bereits  Bekanntes zu wiederholen, möchte ich
  1349. hier  die  Funktionsweise  der  Selectric™-Schnittstelle  beschreiben,
  1350. soweit sie auf BoxKite zutrifft.  Der  Wert des 'FSEL'-Cookies ist die
  1351. Adresse einer Datenstruktur, über die  der Datenaustausch zwischen dem
  1352. Anwendungsprogramm und dem Fileselector  erfolgt. Unter MiNT-Versionen
  1353. mit Speicherschutz ist diese Datenstruktur für Anwendungsprogramme nur
  1354. im  Supervisor-Mode   zugänglich.   Die   Datenstruktur   wird   in  C
  1355. folgendermaßen deklariert:
  1356.  
  1357. typedef struct
  1358. {
  1359.      unsigned long   id;           /* ID (`SLCT')                */
  1360.      unsigned int    version;      /* Version (BCD-Format)       */
  1361.      struct
  1362.      {
  1363.           unsigned           : 8;   /* reserviert                */
  1364.           unsigned pthsav    : 1;
  1365.           unsigned stdest    : 1;
  1366.           unsigned           : 1;
  1367.           unsigned numsrt    : 1;   /* numerisches Sortieren     */
  1368.           unsigned lower     : 1;
  1369.           unsigned dclick    : 1;   /* Ordner mit Doppelklick    */
  1370.           unsigned hidden    : 1;   /* versteckte Dateien        */
  1371.           unsigned onoff     : 1;   /* Fileselector AN/AUS       */
  1372.      } config;
  1373.      int       sort;               /* Sortiermodus               */
  1374.      int       num_ext;            /* Anzahl Extensions          */
  1375.      char      *(*ext)[];          /* Standard-Extensions        */
  1376.      int       num_paths;          /* Anzahl Pfade               */
  1377.      char      *(*paths)[];        /* Standard-Pfade             */
  1378.      int       comm;               /* communication word         */
  1379.      int       in_count;           /* input counter              */
  1380.      void      *in_ptr;            /* input pointer              */
  1381.      int       out_count;          /* output counter             */
  1382.      void      *out_ptr;           /* output pointer             */
  1383.      int cdecl (*get_first)(XDTA *dta, int attrib);
  1384.      int cdecl (*get_next)(XDTA *dta);
  1385.      int cdecl (*release_dir)(void);
  1386. } SLCT_STR;
  1387.  
  1388. Die Felder 'in_count' und  'in_ptr'  sind  weder  in Selectric noch in
  1389. BoxKite benutzt. Die Felder  'pthsav',  'stdest' und 'lower' haben für
  1390. Selectric eine  Bedeutung,  sind  aber  unter  BoxKite  als reserviert
  1391. anzusehen. Die Felder im Einzelnen:
  1392.  
  1393.     -  'id':  Dieses  Langwort  muß  den  Inhalt  'SLCT'  haben.
  1394.     Andernfalls wurde der  'FSEL'-Cookie  von einem Fileselector
  1395.     installiert,  der  das  Selectric-Protokoll  nicht versteht.
  1396.     Bevor Sie das Selectric-Protokoll verwenden, müssen Sie also
  1397.     dieses Feld testen.
  1398.  
  1399.     -   'version':   Hier    steht    die   Versionsnummer   des
  1400.     Selectric-Protokolls im  BCD-Format,  also  0x100  für  1.0.
  1401.     BoxKite trägt nunmehr die Nummer  1.02  ein.
  1402.  
  1403.     - 'config': Die  einzelenen  Bits  in  diesem  Wort schalten
  1404.     bestimme Features von BoxKite  bzw.  Selectric ein oder aus.
  1405.     Die folgenden Bits sind für BoxKite relevant:
  1406.  
  1407.        onoff    steht dieses Bit auf 0, so wird die
  1408.                 GEM-Dateiauswahl anstelle von Selectric bzw.
  1409.                 BoxKite benutzt.
  1410.        hidden   Gibt an, ob versteckte Dateien angezeigt  werden 
  1411.                 sollen.
  1412.        dclick   Ordner erst auf Doppelklick öffnen.
  1413.        numsrt   Schaltet die numerische Sortierung ein.
  1414.  
  1415.     - 'sort': Konfiguriert  das  Sortierkriterium,  dabei gelten
  1416.     folgende Werte:
  1417.  
  1418.                1    Sortiert nach dem Namen
  1419.                2    nach Datum
  1420.                3    nach Größe
  1421.                4    nach Typ bzw. Extension
  1422.                5    unsortiert
  1423.  
  1424.     Negative Werte werden von BoxKite ignoriert.
  1425.  
  1426.     - 'num_ext',  'ext':  Über  diese  beiden  Felder  kann  die
  1427.     Anwendung die Liste von  Dateitypen  verändern. Dazu muß sie
  1428.     in 'num_ext' die Anzahl  der  Typstrings eintragen, in 'ext'
  1429.     die Adresse eines  Arrays  von  Zeigern  auf  die fraglichen
  1430.     Strings. Alle Strings,  von  denen  in  diesem Abschnitt die
  1431.     Rede  ist,  sind   selbstredend   nullterminiert.  Wenn  der
  1432.     Anwender  BoxKite  verläßt,   wird   'ext'  wieder  auf  die
  1433.     BoxKite-eigene  Liste  zurückgebogen.  Die  Applikation  muß
  1434.     diese Felder also vor jedem fsel_input() bzw. fsel_exinput()
  1435.     einstellen. Wenn 'ext'  verstellt  wird,  sperrt BoxKite die
  1436.     Funktion 'Typ merken' im  Menu  unter  dem Pfadfeld. Das ist
  1437.     erforderlich, da BoxKite  nicht  wissen  kann, wieviel Platz
  1438.     die Applikation für einen Typ reserviert hat.
  1439.  
  1440.     -  'num_paths',  'paths':   Mit   diesen  Feldern  kann  die
  1441.     Applikation   BoxKite   eine    neue    Liste   von   Pfaden
  1442.     unterschieben. Das  Verfahren  ist  dasselbe  wie oben. Auch
  1443.     diese felder  müssen  vor  jedem  Aufruf eingestellt werden.
  1444.     Wenn 'paths'  verstellt  wird,  sperrt  BoxKite die Funktion
  1445.     'Pfad merken'  und  das  Speichern  des  Pfades  nach  jeder
  1446.     Auswahl.
  1447.  
  1448.     Bemerkung  dazu:  Schon  die  Selectric-Dokumentation  weist
  1449.     darauf hin, daß  Sie  als  Programmierer  diese Features nur
  1450.     dann nutzen sollten, wenn  es  unbedingt  nötig ist und wenn
  1451.     die Effekte für den Anwender  verständlich sind. Bei BoxKite
  1452.     kommt erschwerend dazu, daß  Sie  dadurch andere Features im
  1453.     Fileselector blockieren.
  1454.  
  1455.     P. S.: Wenn der  Anwender  "Arbeit sichern" betätigt, werden
  1456.     die  von  BoxKite  selbst   gespeicherten  Pfade  und  Typen
  1457.     gesichert, NICHT die von der Applikation festgelegten.
  1458.  
  1459.     -  'comm':   Mit   diesem   Wort   beginnt   eigentlich  der
  1460.     interessanteste Teil  des  Selectric-Protokolls, nämlich die
  1461.     Möglichkeit, mehr  als  einen  Dateinamen  auszuwählen. Dazu
  1462.     werden  auch  noch  die  Felder  'out_count'  und  'out_ptr'
  1463.     benutzt.  Es   wird   folgendes   Verfahren   verwendet:  In
  1464.     'out_count' gibt die Applikation an, wieviele Dateinamen sie
  1465.     höchstens erwartet. In 'out_ptr' trägt sie eine Adresse ein,
  1466.     an  der  sie  diese  Namen  erwartet.  In  'comm'  gibt  die
  1467.     Applikation dann an, in welcher Art und Weise die Dateinamen
  1468.     übergeben werden sollen. Wenn der Fileselector dann mit "Ok"
  1469.     beendet  wird,  setzt  er  in  'out_count'  die  tatsächlich
  1470.     ausgewählte Anzahl von Dateien  ein  und  schreibt die Namen
  1471.     nach der durch 'comm' bestimmten Methode nach 'out_ptr'.
  1472.  
  1473.     Um   überhaupt   die   Rückgabe   mehrerer   Dateinamen   zu
  1474.     veranlassen, muß die Applikation das  Bit  0 in 'comm' auf 1
  1475.     setzen. Wenn dann Bit  1  auf  0  steht,  wird 'out_ptr' als
  1476.     Adresse eines Arrays  von  Zeigern  interpretiert, von denen
  1477.     jeder auf den  Speicher  für  einen  Dateinamen verweist. Es
  1478.     müssen mindestens so  viele  gültige  Zeiger vorhanden sein,
  1479.     wie 'out_count'  angibt,  und  jeder  Zeiger  muß  auf einen
  1480.     hinreichend großen freien  Speicherblock verweisen. ACHTUNG:
  1481.     13 Bytes (incl. terminierender 0) sind NICHT genug, 33 Bytes
  1482.     kommen der Sache schon näher.  Ist  Bit  1 gleich 1, so gilt
  1483.     'out_ptr' als Adresse eines Strings,  in den die Namen durch
  1484.     Leerzeichen getrennt geschreiben werden. Der String muß groß
  1485.     genug für 'out_count' Namen incl. Leerzeichen sein. Beachten
  1486.     Sie auch hier, daß ein Name bis zu 32 Zeichen umfassen kann.
  1487.     Diese zweite Variante kann  aus Kompatibilitätsgründen nicht
  1488.     anders  implementiert  werden;  sie  kann  aber zu Problemen
  1489.     führen,  wenn  Namen  auftreten,   die  bereits  Leerzeichen
  1490.     enthalten.  Das  ist  z.   B.  unter  dem  Minix-Dateisystem
  1491.     durchaus erlaubt. Sie sollten  sich  also im Zweifel für die
  1492.     erste Variante entscheiden.
  1493.  
  1494.     -  'get_first':  Dieses  und  die  beiden  folgenden  Felder
  1495.     enthalten  die  Adressen   dreier   Unterprogramme,  die  es
  1496.     ermöglichen,  eine   theoretisch   unbegrenzte   Anzahl  von
  1497.     Dateinamen zurückzuerhalten. Dieses  Protokoll ist identisch
  1498.     mit Selectric™ 1.02 und wird z.  B. von 1stView und 1stGuide
  1499.     unterstützt. Aus Rücksicht auf  die längeren Dateinamen habe
  1500.     ich für BoxKite eine  kleine  Änderung  festgelegt, die aber
  1501.     die  Funktion   bestehender   Programme  nicht  beeinflussen
  1502.     dürfte.
  1503.  
  1504.     Um dieses  Protokoll  zu  starten,  müssen  Sie  zunächst in
  1505.     'comm' neben dem Bit 0  auch  das  Bit  3 auf 1 setzen. Wenn
  1506.     'fsel_input()' dann signalisiert, daß  der User 'Ok' gewählt
  1507.     hat, rufen  Sie  zunächst  'get_first'  auf.  Diese Funktion
  1508.     erwartet als Parameter (und zwar  in C-Manier auf dem Stack)
  1509.     einen Zeiger auf  eine  XDTA-Struktur  und ein Attributwort.
  1510.     Eine XDTA-Struktur ist wie folgt zu deklarieren:
  1511.  
  1512.     typedef struct
  1513.     {   char            d_reserved[21];
  1514.         unsigned char   d_attrib;
  1515.         unsigned int    d_time;
  1516.         unsigned int    d_date;
  1517.         unsigned long   d_length;
  1518.         char            d_fname[34];
  1519.     } XDTA;
  1520.  
  1521.     Bis auf die Länge des Namensfeldes ist sie identisch mit der
  1522.     Standard-TOS-DTA. Das Namensfeld wurde mit Rücksicht auf die
  1523.     langen Dateinamen erweitert. 
  1524.  
  1525.     'get_first'  funktioniert  wie   'Fsfirst'   und  füllt  die
  1526.     XDTA-Struktur mit Informationen  über  die erste selektierte
  1527.     Datei. Es werden nur  solche  Dateien zurückgegeben, die die
  1528.     Attribute  haben,  die  mit   dem  übergebenen  Attributwort
  1529.     korrespondieren (die Werte werden  genauso behandelt wie von
  1530.     GEMDOS bei Fsfirst(), d.  h.  Dateien  mit den Attributen 0,
  1531.     "Archiv" oder  "schreibgeschützt"  erscheinen  immer).  Wenn
  1532.     eine Datei gefunden wurde, gibt 'get_first()' eine 0 zurück.
  1533.     Dann können Sie mit  'get_next()' nacheinander alle weiteren
  1534.     Dateien anfordern, bis  ein  Returncode ungleich 0 auftritt.
  1535.     Danach  sollten  Sie   'release_dir()'  aufrufen,  woraufhin
  1536.     BoxKite den von  der  Dateiliste belegten Speicher freigibt.
  1537.     Spätestens beim  nächsten  Aufruf  von  BoxKite passiert das
  1538.     auch automatisch, aber so lange sollten Sie eigentlich nicht
  1539.     warten. Diesen ganzen  Ablauf  sollten  Sie in 'wind_update'
  1540.     einschachteln, damit kein anderer Prozeß auf die Idee kommt,
  1541.     zwischenzeitlich  eine  Dateiauswahlbox   aufzurufen.  Falls
  1542.     diese Beschreibung etwas zu abstrakt geraten ist, werfen Sie
  1543.     einen Blick in BEISPIEL.C.
  1544.  
  1545. Seit Version 1.71  enthält  BoxKite  eine  Schnittstelle, über die die
  1546. Hauptapplikation GEM-Messages,  die  sich  auf  hintenliegende Fenster
  1547. beziehen, erhalten kann. Damit entfällt  der Redraw mit kleinen bunten
  1548. Doppeldeckern.
  1549.  
  1550. Das  Grundprinzip  ist  ganz  einfach.  Sie  übergeben  an  BoxKite im
  1551. 'fsel_exinput()'  als  zusätzlichen   Parameter  die  Einsprungadresse
  1552. einer Routine, die  die  Behandlung  dieser  Messages übernimmt. Diese
  1553. Routine muß in C folgendermaßen deklariert werden:
  1554.  
  1555.     void cdecl message_handler(int *message)
  1556.  
  1557. Sie sollte also auf  dem  Stack  (in  C-Manier) als einzigen Parameter
  1558. einen Zeiger auf den  Message-Puffer  erwarten, der von 'evnt_multi()'
  1559. gefüllt wird. Einen Rückgabewert  braucht  sie  nicht zu erzeugen. Vor
  1560. dem Aufruf dieser Routine schaltet  BoxKite  wieder  auf den Stack der
  1561. Hauptapplikation um.
  1562.  
  1563. Der Zeiger auf diese  Routine  wird  im  GEM-Feld 'addrin' als vierter
  1564. Parameter an 'fsel_exinput()' übergeben.  Um  deutlich  zu machen, daß
  1565. heir ein gültiger Zeiger steht, muß  'contrl[3]' auf 4 gesetzt werden.
  1566. Andere Fileselectoren sollten sich nicht an dieser Änderung stören.
  1567.  
  1568. In BEISPIEL.C finden Sie auch für dieses Feature ein Anwedungsbeispiel
  1569. sowie ein in diesem  Sinne  erweitertes  Binding für 'fsel_exinput()'.
  1570. Dieses Binding läuft mit Pure  C 1.1. Eine Assembler-Version desselben
  1571. Bindings liegt als Quelltext und als Objekt-Datei im DR-Format bei.
  1572.